2014-10-06 74 views
0

我有这样的活动结构在我的Android应用(箭头指我是按下按钮,在打开的下一个活动/片段):更改后退按钮行为

活动A - >片段A - >片段B - >活动B - >片段B

我希望当我按回上一个片段B上的按钮时,它会转到活动A而不是活动B.是否有可能?

如果我按照我的应用程序这条路它仅适用: 活动A - >片段A - >片段B

如何做到这一点?

+0

查看Android开发者网站 - [适当后退导航](http://developer.android.com/training/implementing-navigation/temporal.html)和[对片段后退导航](HTTP:/ /developer.android.com/training/implementing-navigation/temporal.html#back-fragments) – bwegs 2014-10-06 15:11:17

回答

0

这实际上发生在您当前的代码中。如果您位于最后一个片段B(在活动B中)并按下,它会将您带回活动A,但片段B已加载..这是您从活动B开始导航时的状态。

要解决这个问题,你可以在活动A.使用startActivityForResultonActivityResult而当onActivityResult被调用时,隐藏片段B并显示片段A.

0

您可以在活动中使用finish()你不想回去(finish()杀死该活动)或实现自己的方法来覆盖默认值。希望这可以帮助。

@Override 
public void onBackPressed() { 
    // New code 
}