Backstack没有显示想要的结果

时间:2014-11-17 11:49:22

标签: android android-fragments back-stack

我有3个片段,即frag1,frag2,frag3。

第一个片段有两个按钮。第一个按钮单击将frag2放在屏幕上,单击第二个按钮将frag3放在屏幕上。

第一个按钮应遵循的工作流程是

frag1 - > frag2

frag2 - > frag3

按下后退按钮时:frag3 - > frag1

第二个按钮应遵循的工作流程是

frag1-> frag3

按下后退按钮时:frag3 - > frag1

工作流程很好但是当我执行第一个按钮操作(即frag1-> frag2-> frag3-> frag1)然后第二个按钮操作时,片段frag1被frag3替换但是当我按下后退按钮我仍然在屏幕上显示frag3,然后再次按下后退按钮,应用程序关闭。

任何人都可以帮助我解决我对此问题采取的错误方法,并请给出解决方案。非常感谢。

1 个答案:

答案 0 :(得分:0)

您的问题的可能解决方案是

  • 在你的活动的布局文件中创建一个FrameLayout并将fragment1放入visibility = visible。
  • 当要显示片段2/3时,只需将frag1的可见性更改为已删除并将frag 2/3添加到framelayout并将frag1的可见性更改为
  • 当你在frag2 / 3并且必须移动到frag3 / 2时移除2/3并添加3/2
  • 当您处于frag2 / 3并希望返回1时删除frag2 / 3并显示frag1