Как динамически установить root view в флаттере? - PullRequest
1 голос
/ 06 мая 2019

1001 * дэвы *

У меня есть ситуация, когда я хочу изменить свое корневое представление на основе условия. Например, если пользователь уже вошел в систему, корневым представлением будет Главный экран, иначе экран входа.

Как мне этого добиться? Пожалуйста, помогите.

Спасибо

1 Ответ

1 голос
/ 06 мая 2019

в вашем файле main.dart есть функция void main() => runApp(MyApp());, где MyApp - это виджет, извлекающий виджет MaterialApp или что-то подобное. Вы уже можете выбрать здесь, чтобы начать с другого home виджета.

Если вам нужно выбрать начальный экран на основе какой-либо асинхронной операции (например, проверка настроек в Предпочтениях или Безопасном хранилище), вы возвращаете FutureBuilder вместо вашего MaterialApp. Затем FutureBuilder возвращает виджет после завершения операции.

...