Man*_*eel 2 navigation dart flutter
我正在制作一个应用程序,在我的注销对话框中,我得到了这个代码。
Navigator.of(context).pushAndRemoveUntil(
MaterialPageRoute(builder: (context) {
return AuthScreen();
}), (route) {
// if( route is (MaterialPageRoute('/')))
// {
// }
// print(route);
return false;
});
Run Code Online (Sandbox Code Playgroud)
我只想推送 AuthScreen 并删除,直到路由屏幕。怎么做?
因此,在此代码之后,堆栈包含根屏幕和 AuthScreen。
Bac*_*ach 12
你可以这样做:
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (BuildContext context) => AuthScreen()),
ModalRoute.withName('/') // Replace this with your root screen's route name (usually '/')
);
Run Code Online (Sandbox Code Playgroud)
您可以尝试的另一种方法是:
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (BuildContext context) => AuthScreen()),
(Route<dynamic> route) => route is RootPage (your root page's type)
);
Run Code Online (Sandbox Code Playgroud)
还有一个:
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (BuildContext context) => AuthScreen()),
(Route<dynamic> route) => route is RootPage (your root page's type)
);
Run Code Online (Sandbox Code Playgroud)
示例应用程序:
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (BuildContext context) => AuthScreen()),
(Route<dynamic> route) => route.isFirst (pop until your first page)
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15019 次 |
| 最近记录: |