【发布时间】:2013-05-15 09:40:33
【问题描述】:
我有一个问题,我在任何地方都找不到解决方案。
当我按下后退按钮时,我的应用程序不会返回到上一个片段,而是关闭活动。
我有一个显示 4 个片段的活动:[1]、[2]、[3]、[4]。我可以通过操作栏在前 3 个片段之间切换,我不想将它们添加到后台堆栈。
片段 [4] 是片段 [3] 中所选项目的详细视图。当我按下 [4] 时,我想返回片段 [3],而不是关闭应用程序。
通过放置片段的活动以这种方式完成转换:
private void replaceFragment(Fragment fragment, boolean toBackStack){
if(fragment != null){
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.container, fragment);
if(toBackStack)
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
}
}
除了从 [3] 到 [4] 的转换之外,toBackStack 始终为 false。
如果我在每次转换中都将 toBackStack 传递给 true,则活动无论如何都会关闭。
【问题讨论】:
标签: android android-fragments android-activity back-stack