android从backstack弹出片段

时间:2014-09-03 13:11:28

标签: android android-fragments fragment back-stack

我有一个Android应用程序,它使用了一个滑动菜单库(https://github.com/jfeinstein10/SlidingMenu),但是当我正在弹出backstack中的片段时,我遇到了问题。

我的屏幕布局摘要如下:

[菜单] - [A] - > [A1] - > [A2]         - [B] - > [B1] - > [B2]

用户有一个带有2个选项A和B的菜单。片段B1在应用启动时显示,用户可以通过选择B1上显示的项目之一进入片段B2。此时允许用户打开抽屉,选择[A],显示片段A1。在用户选择菜单项时,上面提到的库尝试使用代码fragmentmanager.popBackStackImmediate()清除后栈。

执行此行时,即使我可以看到只有B2位于片段管理器的后台列表中,B1也会被重新创建(我可以看到onCreate / onCreateView / onActivityCreated / viewStateRestored被调用)。 B1显得非常短暂,然后出现A1。

由于我获得了nullpointerexceptions,这偶尔会导致问题,因为在B1中我有时会使用getActivity()但是当B1不可见时,这会解析为null。

我想要发生的是用户能够通过抽屉菜单从B2(或B1)转移到A1,而根本不可见B1。无论如何我可以清除背板而不会弹出碎片吗?

我希望这是有道理的,有人可以请你协助吗?

谢谢,非常感谢!

0 个答案:

没有答案