我希望知道如何通过满足应用程序开发期间可能出现的所有要求在Flutter中的屏幕之间导航 . 例如,到下一页的正常导航很容易,但我想玩堆栈 . 1.登录完成后如何清除堆栈,以便当用户进行背压时从主页完成应用程序 . 2.如何从我的应用程序注销,即当我按下注销时,所有页面都会从堆栈中清除并显示登录页面,如果按回来则应用程序完成 .
现在,如果任何人只能提供一个以上两个的例子或解释,那么这将是伟大的 . 谢谢 .
对于这两种情况,您都可以使用pushAndRemoveUntil .
案例1,即您删除所有路线(登录路线)并导航到正常屏幕:
Navigator.of(context).pushAndRemoveUntil(yourHomeScreenRoute, (Route<dynamic> route) => false)
表达式 (Route<dynamic> route) => false 将始终返回false,即删除所有路由 .
(Route<dynamic> route) => false
情况2,即您再次删除所有路线并导航到您的登录屏幕 .
Navigator.of(context).pushAndRemoveUntil(yourLoginScreenRoute, (Route<dynamic> route) => false)
另一种方法只是popUntil,虽然我认为我的概念会让你满意 .
如果您不知道如何创建路线,请选中this link .
1 回答
对于这两种情况,您都可以使用pushAndRemoveUntil .
案例1,即您删除所有路线(登录路线)并导航到正常屏幕:
表达式
(Route<dynamic> route) => false
将始终返回false,即删除所有路由 .情况2,即您再次删除所有路线并导航到您的登录屏幕 .
另一种方法只是popUntil,虽然我认为我的概念会让你满意 .
如果您不知道如何创建路线,请选中this link .