我正在尝试使用Flutter开发的应用程序,该应用程序使用底部导航栏。我想将以前访问的屏幕保留在导航堆栈中,就像在YouTube和Instagram应用中一样。例如,假设我有3个不同的底部导航栏(A,B和C)。分别单击选项卡A,B和C之后,我想分别返回C,B和A。
这是我的主要目标,但如果可以实施,我还有一个次要目标。
在Instagram和Youtube中,如果按A-> B-> C-> B-> C的顺序单击选项卡(现在位于选项卡C上),然后在开始单击后退按钮时它将返回到C -> B-> A标签。基本上,每个选项卡都可以在导航堆栈中放置一次。如果您多次访问同一标签,则同一标签的上一个屏幕将从导航堆栈中删除。
我正在为该问题搜索解决方案两天,但找不到。当我单击后退按钮应用程序刚刚关闭时,我什至已经测试了由阿里巴巴开发人员制作的flutter-go app。
对于此问题的任何帮助,我将不胜感激。
答案 0 :(得分:0)
本文介绍了您的用例: Multiple Navigators with BottomNavigationBar
答案 1 :(得分:0)
Navigator.of(context).pushNamedAndRemoveUntil('/screenB', ModalRoute.withName('/screenA'))
;
在最后一个FragmentC上尝试这个