Dart 颤振中导航器路线变化的观察者
有没有办法在颤振中听到导航器的路线变化?基本上,我希望在推送或弹出路线时收到通知,并从导航器发出的通知返回屏幕上显示的当前路线。您可以实现并接收带有详细信息的通知 在导航观测者的基础上,您还可以使用和。我也在努力解决这一问题,而出于我的目的,Dart 颤振中导航器路线变化的观察者,dart,flutter,Dart,Flutter,有没有办法在颤振中听到导航器的路线变化?基本上,我希望在推送或弹出路线时收到通知,并从导航器发出的通知返回屏幕上显示的当前路线。您可以实现并接收带有详细信息的通知 在导航观测者的基础上,您还可以使用和。我也在努力解决这一问题,而出于我的目的,路由观测者感觉工作过度,而且超出了我的需要。我最近处理它的方式是在我的MaterialApp中使用ongeneraterout属性。因此,如果您在应用程序中使用onGenerateRoute,则此解决方案更适用(如果您使用参数导航,可能特别有用)。你可以阅读
路由观测者感觉工作过度,而且超出了我的需要。我最近处理它的方式是在我的MaterialApp
中使用ongeneraterout
属性。因此,如果您在应用程序中使用onGenerateRoute
,则此解决方案更适用(如果您使用参数导航,可能特别有用)。你可以阅读更多关于它的内容
我的MaterialApp
如下所示:
runApp(MaterialApp(
标题:“bla”,
主页:BuilderPage(LoginArguments(false)),
onGenerateRoute:generateRoute
));
generaterout
方法如下所示:
路由生成器输出(路由设置){
开关(设置.名称){
“主要”案例:
打印('导航到主')
返回MaterialPackageRoute(生成器:()=>MainScreen());
“登记册”一案:
打印('导航到注册表')
返回MaterialPackageRoute(生成器:()=>RegisterScreen());
违约:
返回物料路线(
建造商:()=>脚手架(
正文:中(
子项:Text('No route defined for${settings.name}'),
));
}
}
因此,我现在每次都会这样做,例如:
Navigator.pushNamed(
上下文
"登记册",,
);
它将打印导航到注册表的。我认为,如果您不一定需要知道是按了还是弹出了,这种方法尤其有用。通过一些额外的实现,还可以通过注入参数观察到这一点