#flutter
#flutter
Вопрос:
Я знаю, что этот вопрос может быть немного простым, но я хочу быть уверенным в своем классе навигации. Оно должно быть действительным.
Я имею в виду, я маршрутизирую свои страницы с помощью функции pushNamed() и pop, после чего я использую функцию pop(), но меня интересует, использует ли пользователь кнопку возврата устройства, что произойдет в стеке?
И я также не хочу использовать функцию popUntil.
если пользователь не будет использовать кнопку my AppBar, если просто использовать кнопку возврата устройства, будет ли моя XxxPage () в стеке или она удаляется автоматически?
Ответ №1:
Да, она извлекает ее из стека, если хотите, вы можете протестировать поведение, обернув экран WillPopScope()
виджетом
например:
WillPopScope(
onWillPop: () {
print('POP');
return Future.value(true);
},
child: YourChildWidget )
Ответ №2:
Как описано Абдулрахманом, вы можете использовать WillPopScope для всплывающего окна или изменить что-то на pop.
WillPopScope(
onWillPop: () {
print('This will pop');
Navigator.pop(context);
}, child: Container(),
)
вы можете установить начало для своего каркаса, чтобы также вручную обрабатывать кнопку возврата каркаса.