OBS:目前(撰写时)仍没有官方支持,但是谷歌已经更新了他们的示例,展示了他们认为应该如何解决:https://github.com/googlesamples/android-architecture-components/tree/master/NavigationAdvancedSample
Android Navigation Codelab 很好地介绍了如何将导航架构组件(Navigation Architecture Component)与 BottomNavigationView
结合使用。但假设我在BottomNavigationView
中有 2 个选项卡,Tab1 和 Tab2。并且让我们假设在Tab1 中通过片段 Frag1 --> Frag2 进行导航。现在,每当我转到 Tab2,然后再回到 Tab1 时,Frag1,2 的片段返回堆栈消失,并被替换为起始点 Frag1。
在应用程序中,我要如何使用BottomNavigationView
和Navigation以保持其返回堆栈在标签更改时保持完整,并使后退/上一步按钮的行为与指南保持同步。
以前我使用ViewPager
并自己管理返回堆栈来完成此操作,但是这似乎不是使用新的Navigation的正确方法。
提前致谢!
编辑:
这里有一个更详细的答案链接.
ViewPager
是否感觉更好?这样,您只需要保留后退堆栈,而不是整个填充的片段本身。@jaychang0917对此有什么想法吗? - Algarapp:popUpTo
和app:popUpToInclusive="true"
吗? - AnEnigmaticBug