今天遇到一个问题,利用 pageRoutes 路由 进行页面的跳转 从 A —> B —> C —> D —> E 然后想要从 E处理过数据后直接返回到B 利用Navigator.popUntil(context, ModalRoute.withName('/bPageName'));不能返回页面
解决办法
在onGenerateRoute return MaterialPageRoute的时候,加上settings参数
代码语言:javascript复制Widget createApp() {
return MaterialApp(
title: 'xxxx',
theme: ThemeData(
primarySwatch:
ColorsUtil.colorToMaterialColor(Global.naviBackgroundColor),
visualDensity: VisualDensity.adaptivePlatformDensity,
),
debugShowCheckedModeBanner: false,
home: AppRoute.global.buildPage(RoutePath.root_page, null),
onGenerateRoute: (RouteSettings settings) {
return MaterialPageRoute<Object>(
builder: (BuildContext context) {
return AppRoute.global
.buildPage(settings.name, settings.arguments);
},
settings: settings);
});
}
这样就可以返回指定的页面了
代码语言:javascript复制 Navigator.popUntil(context, ModalRoute.withName(popPageName));