我正在开发一个应用程序,其中包含带有多个选项卡的NavigationDrawer,它调用不同的片段。
假设我有碎片A,B,C。
在创建活动时,片段容器将填充片段A。
我想以某种方式保存对这个片段的引用,当我导航到其他片段时,我将通过onbackpress()返回片段a。
重要的是碎片A不会被摧毁。
我尝试在第一个事务上用addToBackStack()
实现它,但它只在导航到另一个片段时有效:
A -> B -> onBackPress() -> A
但当我导航到更多时,它无法正常工作:
A -> B -> C -> onBackPress() -> C
而期望的结果是:
A -> B -> C -> onBackPress() -> A
我一定是丢了什么东西,希望能帮上忙。
谢谢你
最佳答案
重写onbackpressed()。
然后使用popbackimmediate和标志:pop_back_stack_inclusive
这将弹出所有backback条目,直到找到popbackimmediate()中提供的标记。
所以简而言之,在onbackpressed中,使用popbackimmediate并为其提供片段a的标记,同时还包括标记pop_back_stack_
关于java - 使用FragmentManager总是返回相同的 fragment ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34470539/