1

我想从主细节的细节视图中删除片段(片段堆栈)。如果我单击主视图中的列表项,它会打开一个片段,如果我编辑列表视图的项目,则会使用另一个片段。我想要做的是,从详细视图中删除所有片段,将其更改为空白容器,就像应用程序启动时一样。

目前我正在用一个空白片段替换容器,但它在少数细节视图案例中不起作用。

NullFragment fragment = new NullFragment();
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager
        .beginTransaction();
fragmentTransaction.replace(R.id.item_detail_container,
        fragment);
fragmentManager.popBackStackImmediate();
fragmentTransaction.commit();
4

1 回答 1

3

您可以使用FragmentManager.getBackStackEntryCount()来获取片段的数量,backstack并用于FragmentManager.popBackStack()一个接一个地弹出堆栈中的顶部片段。

于 2013-08-15T14:07:12.187 回答