我正在使用go_router,当用户按下后退按钮时,我想从子路由退出应用。例如,我有路由“/”、“/a”、“/b”、“/a/1”。现在我从'/a/1'路线我想退出应用程序时,用户按下后退按钮(基于一些条件).请帮帮我
mlnl4t2r1#
使用WillPopScopeWidget Package Page的Scaffold,并将此invokeMethod添加到onWillPop。
return WillPopScope( onWillPop: () async { await SystemChannels.platform.invokeMethod('SystemNavigator.pop'); return false; }, child: Scaffold(...), );
字符串
6vl6ewon2#
只需将Scaffold Package 为WillPopScope,并在onWillPop函数中使用SystemNavigator.pop(),返回值为false。但是SystemNavigator不像Navigator那样工作。根据Apple的人机界面指南,不允许强制退出。不幸的是,您的应用程序将不会被批准用于Apple Store。
Scaffold
WillPopScope
onWillPop
SystemNavigator.pop()
false
SystemNavigator
Navigator
WillPopScope( onWillPop: () async { SystemNavigator.pop(); return false; }, child:... }
2条答案
按热度按时间mlnl4t2r1#
使用WillPopScopeWidget Package Page的Scaffold,并将此invokeMethod添加到onWillPop。
字符串
6vl6ewon2#
只需将
Scaffold
Package 为WillPopScope
,并在onWillPop
函数中使用SystemNavigator.pop()
,返回值为false
。但是SystemNavigator
不像Navigator
那样工作。根据Apple的人机界面指南,不允许强制退出。不幸的是,您的应用程序将不会被批准用于Apple Store。字符串