从详细视图中删除片段

时间:2013-08-15 14:01:39

标签: android fragment master-detail

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

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

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

1 个答案:

答案 0 :(得分:3)

您可以使用FragmentManager.getBackStackEntryCount()获取backstack中的片段数量,并使用FragmentManager.popBackStack()逐个弹出堆叠中的顶部片段。