我正在尝试使用向上导航模式,并在使用片段和活动时遇到问题。假设我有活动A并且该活动包含片段a。现在我单击片段a中的某个片段,并且片段b发生片段b替换,并将a放入后端堆栈中。 “向上”箭头现在出现在我的工具栏中。这很好。现在我点击片段b中的内容并启动活动B. A是B的父项。现在,B有一个向上箭头,我希望当我触摸它时,我会到达顶部,即完成活动B和A的后退堆栈将被弹出,所以我们结束活动A包含片段a和空回栈。向上导航的片段和活动
这里我的问题是,当在B中按下,B完成但A仍然显示片段b。有没有什么办法可以让A不会恢复其onActivityResult或类似的东西的片段后退状态,所以片段B从不会显示在从B开始的动作上?
我试过的是在启动B和弹出A的片段backstack onActivityResult时使用startActivityForResult,但是随后b在弹出堆栈之前暂时显示。我只想要一个没有恢复它,如果达在按下B.国家片段
编辑: 我现在使用的最多的导航模式是,在我的清单我定义了一个作为B的父级和活动BI中有一个工具栏,我使用setDisplayHomeAsUpEnabled将其设置为supportActionBar。
而不是在onActivityResult中尝试在调用startActivity(B)之后执行它。 – GuilhE
您是否尝试过使用[NavUtils](http://developer.android.com/reference/android/support/v4/app/NavUtils.html)并在您的清单中声明父级活动?我认为您可以使用这些功能正确地返回到您的家长活动,一旦您按下选项菜单中的向上按钮,应该重建该活动。你没有详细说明你用来执行向上导航的方法。 –
感谢您的评论家伙。 @GuilhE:这种方法的问题是,我想在用户按下后或在B之间做出区别。 – hordurh