Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
573 of 1024 menu
◀ ▶

Виджет Stepper

Виджет Stepper рисует последовательность шагов из Step. Список шагов передают в steps, номер активного - в currentStep, расположение - в type из StepperType. Переходы обрабатывают в onStepContinue и onStepCancel.

Синтаксис

Stepper( currentStep: 0, onStepContinue: () {}, onStepCancel: () {}, steps: [ Step(title: Text('abcde'), content: Text('12345')), ], )

Параметры

Параметр Описание
steps Список шагов мастера.
currentStep Индекс открытого шага.
onStepContinue Нажатие «Продолжить» на активном шаге.
type Вертикальный или горизонтальный StepperType.

Пример

Давайте покажем мастер из двух шагов:

import 'package:flutter/material.dart'; void main() { runApp(const MaterialApp(home: StepperDemo())); } class StepperDemo extends StatefulWidget { const StepperDemo({super.key}); @override State<StepperDemo> createState() => _StepperDemoState(); } class _StepperDemoState extends State<StepperDemo> { int step = 0; @override Widget build(BuildContext context) { return Scaffold( body: Stepper( currentStep: step, onStepContinue: () { setState(() { if (step < 1) step++; }); }, onStepCancel: () { setState(() { if (step > 0) step--; }); }, steps: [ Step(title: Text('abcde'), content: Text('12345')), Step(title: Text('12345'), content: Text('abcde')), ], ), ); } }

Кнопки внизу шага переключают currentStep между 0 и 1.

Пример

Давайте включим горизонтальный тип:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Stepper( type: StepperType.horizontal, currentStep: 0, onStepContinue: () {}, onStepCancel: () {}, steps: [ Step(title: Text('abcde'), content: SizedBox.shrink()), Step(title: Text('12345'), content: SizedBox.shrink()), ], ), ), ), ); }

Заголовки шагов выстроятся в ряд.

Смотрите также

  • виджет Step,
    которым описывают один шаг мастера
  • перечисление StepperType,
    которое задаёт вертикальный или горизонтальный вид
  • виджет LinearProgressIndicator,
    который показывает прогресс внутри шага
  • виджет ElevatedButton,
    которым заменяют стандартные кнопки мастера
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить