Как динамически изменить количество шагов в степпере в флаттере? - PullRequest
0 голосов
/ 22 октября 2018

Я делаю форму проверки в пошаговом формате в флаттер .Каждый шаг имеет форму подтверждения.

При первом открытии страницы есть только один шаг.Я хочу, чтобы пользователь щелкнул продолжить и получил еще один шаговый шаг (т. Е. Шаг 2 и получил еще один шаг, нажав продолжить на шаге 2).

Я попытался изменить количество шагов, добавив еще один шаг ксписок и обновление при вызове changeCurrentStepContinue, но это не может увеличить количество шагов, показывающих ошибку.Возвращаясь и снова продвигаясь вперед, я получаю обновленный список.

Итак, как я могу изменить количество шагов на той же странице, нажимая продолжить на каждом шаге?

Ответы [ 2 ]

0 голосов
/ 14 июля 2019

Я не знаю, насколько "хорош" мой трюк, но я просто изменяю Ключ Степпера, добавляя общее количество предметов в списке, к которому я привязан.

return Stepper(
      key: Key("mysuperkey-" +  items.length.toString()),
      ...
);

Это должно создать новый степпер при изменении суммы шага.

Cheers

0 голосов
/ 22 октября 2018

Это невозможно в соответствии с комментарием в stepper.dart , где написано /// The length of [steps] must not change., но я сделал некоторые правки, которые хорошо работают для вертикального степпера.

Выполните следующие шаги, чтобы применить этопатч в код вашего флаттера

  1. cd в flutter каталог
  2. скачать этот файл 0001-Made-Stepper-Stepper-Size-Dynamic.patch и сохраните его в папке flutter
  3. В своем терминале $ git apply 0001-Made-Stepper-Stepper-Size-Dynamic.patch

ИЛИ

Замените _buildVertical() в /flutter/packages/flutter/lib/src/material/stepper.dart на this функция

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...