退出应用程序而不返回任何以前的活动/视图 颤动



我无法从当前活动/视图(即主页(退出我的应用程序。我的应用程序从Splash>登录>OTP>主页开始。 我希望能够在Splash<>登录<>OTP之间来回导航。一旦我到达主页并按回键,应用程序应该退出。 以下是我的情况示例

溅:

FlatButton(
child: Text('Goto Login'),
onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context) => Login()));
},
),

登录:

FlatButton(
child: Text('Goto OTP'),
onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context) => OTP()));
},
),

一次性密码:

FlatButton(
child: Text('Goto Home'),
onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context) => Home()));
},
),

家:

FlatButton(
child: Text('Goto Others'),
onPressed: (){
Navigator.push(context, MaterialPageRoute(builder: (context) => Others()));
},
),

AFAIKNavigator.pushReplacement()是这里的某种解决方案,我尝试过,但它只跳过了实现它的活动/视图。

SystemChannels.platform.invokeMethod('SystemNavigator.pop')WillPopScope()有效,但它会显示以前的活动/视图 (OTP( 片刻,然后退出应用程序,这看起来不太好。

不建议exit(0)

那么,关于最佳实践的任何想法和针对这种情况的简单方法?

Navigator.pushNamedAndRemoveUntil(context, '/home', (_) => false);在跳转到主页之前删除所有历史路线

据我所知,您可以尝试在 OTP 屏幕中使用 Navigator.pushReplacement(( 方法,该方法通过处理所有以前的路由进入主页,因此在主页中按返回按钮存在该应用程序。

最新更新