如何创建一个Back堆栈,以便点击几个Action Bar导航选项卡将带您回到选项卡

时间:2012-01-18 20:35:22

标签: android

该应用有一个操作栏,操作栏上有几个导航标签。如果有人运行应用程序,则会发生这种情况:

  1. 打开应用,查看片段1(标签1)中的内容
  2. 点击标签2,查看片段2中的内容。
  3. 点击标签3,查看片段3中的内容
  4. 回击。片段消失,标签内容为空。再次回击,另一个空白片段显示,再次回击和另一个空白片段,再次回击,退出应用程序。
  5. 我想要发生的是有人访问一系列标签,然后使用Back循环回过头来看。我花了好几个小时试图搞清楚,我很难过。帮助一个人摆脱痛苦?

1 个答案:

答案 0 :(得分:4)

女士。哈克本,在SO的某个地方的另一个答案,真的不喜欢你想要的IIRC。标签是一个独立的导航比喻。就像按下Web浏览器中的BACK按钮不会神奇地关闭选项卡一样,也不应该按下Android应用程序中的BACK按钮。在最终退出应用程序之前,按BACK按钮可能会更改当前选项卡中的内容。

话虽如此,如果你确定这是你想要的导航,不要使用内置的后台堆栈,而是自己管理它,与你想要的旧式{{1}标签没什么区别根据BACK按钮按下消失。你会保留你添加的标签的标签(显然是双关语),然后在TabHost上使用removeTab()removeTabAt()来摆脱它们。在最后一个选项卡上,ActionBar将链接到超类以获得正常的活动结束逻辑。