Flu*_*Dev 2 routes dart flutter
首先,我不会像这样在 MaterialApp 中设置路线
new MaterialApp(
home: new Screen1(),
routes: <String, WidgetBuilder> {
'/screen1': (BuildContext context) => new Screen1(),
'/screen2' : (BuildContext context) => new Screen2(),
'/screen3' : (BuildContext context) => new Screen3(),
'/screen4' : (BuildContext context) => new Screen4()
},
)
Run Code Online (Sandbox Code Playgroud)
相反,我通过像这样推送新路由来从我的应用程序中的不同位置路由:
Navigator.push(
context,
MaterialPageRoute(
builder: (BuildContext context) =>
Screen3(someInputData)));
Run Code Online (Sandbox Code Playgroud)
例如,如何将屏幕从当前屏幕弹出到屏幕编号 2?
die*_*per 11
假设:屏幕 1 -> 屏幕 2 -> 屏幕 3 -> 屏幕 4
当您打开 时Screen2,您可以执行以下操作:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => Screen2(),
settings: RouteSettings(name: '/screen2')),
);
Run Code Online (Sandbox Code Playgroud)
当您想从Screen4to返回时Screen2:
Navigator.popUntil(context, ModalRoute.withName("/screen2"));
Run Code Online (Sandbox Code Playgroud)
如果您只想返回上一个屏幕,请使用:
Navigator.of(context).pop();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5989 次 |
| 最近记录: |