// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; /// Flutter code sample for [StepStyle]. void main() => runApp(const StepStyleExampleApp()); class StepStyleExampleApp extends StatelessWidget { const StepStyleExampleApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( home: Scaffold( appBar: AppBar(title: const Text('Step Style Example')), body: const Center(child: StepStyleExample()), ), ); } } class StepStyleExample extends StatefulWidget { const StepStyleExample({super.key}); @override State createState() => _StepStyleExampleState(); } class _StepStyleExampleState extends State { final StepStyle _stepStyle = StepStyle( connectorThickness: 10, color: Colors.white, connectorColor: Colors.red, indexStyle: const TextStyle(color: Colors.black, fontSize: 20), border: Border.all(width: 2), ); @override Widget build(BuildContext context) { return Stepper( type: StepperType.horizontal, stepIconHeight: 48, stepIconWidth: 48, stepIconMargin: EdgeInsets.zero, steps: [ Step( title: const SizedBox.shrink(), content: const SizedBox.shrink(), isActive: true, stepStyle: _stepStyle, ), Step( title: const SizedBox.shrink(), content: const SizedBox.shrink(), isActive: true, stepStyle: _stepStyle.copyWith( connectorColor: Colors.orange, gradient: const LinearGradient(colors: [Colors.white, Colors.black]), ), ), Step( title: const SizedBox.shrink(), content: const SizedBox.shrink(), isActive: true, stepStyle: _stepStyle.copyWith(connectorColor: Colors.blue), ), Step( title: const SizedBox.shrink(), content: const SizedBox.shrink(), isActive: true, stepStyle: _stepStyle.merge( StepStyle( color: Colors.white, indexStyle: const TextStyle(color: Colors.black, fontSize: 20), border: Border.all(width: 2), ), ), ), ], ); } }