使“向上”button的行为就像在Android上的“后退”button

我正在使用的Android应用程序devise要求“向上”button的行为方式与“返回”button的行为方式相同,但我不确定如何实现这一点。

我知道android:parentActivityName必须被指定为“向上”button才能在活动中可见,但是指定一个固定的父活动对于活动来说并不合适。 用活动A,B和C想象一下这个场景:

  1. 启动到活动A,它包含两个button:分别带你到活动B和C.
  2. 点击活动B的button
  3. 过渡到活动B.它包含两个button:每个button分别带您到活动A和C.
  4. 点击活动C的button
  5. 过渡到活动C.
  6. 点击“上”button,你应该采取行动B.
  7. 现在在活动B上:点击活动A的button
  8. 过渡到活动A.
  9. 点击“上”button,你应该采取行动B.
  10. 在活动B点击“向上”button,你应该参加活动A.
  11. 现在在活动A上:点击活动C的button
  12. 过渡到活动C.
  13. 点击“上”button,你应该采取行动A.

如果我要为每个活动指定android:parentActivityName ,那么将B和C的父活动设置为A可能是有意义的,但是这意味着每当我们从活动B或C中点击“向上”button时,我们就在活动A (这并不总是应该发生的)。

有没有人有这种types的经验?

Solutions Collecting From Web of "使“向上”button的行为就像在Android上的“后退”button"

从你所有的三个活动中添加以下内容

 @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: onBackPressed(); return true; } return(super.onOptionsItemSelected(item)); } 

当你按下你的应用程序上的button,它会调用onOptionsItemSelectedandroid.R.id.home的ID只是赶上这种情况下,手动调用onBackPressed()