如何在不使用Intent的情况下从任何其他Activity打开Home Activity

时间:2013-02-02 21:11:42

标签: android button android-activity back launching

在一次采访中有人问我这个问题。假设申请中有4项活动。他希望后退按钮能够在前三个活动中正常工作(即按下后退按钮上的前一个屏幕);除了最后一个。

他想要的是,当他按下第四个活动(屏幕)上的按钮时,用户应该转到主页活动(开始屏幕或第一个屏幕)。但是当用户从第一个屏幕进入第二个屏幕时,Home Activity上的内容应该相同。所以我认为,我不能使用Intent,因为它将创建Starting Activity的新实例。

1 个答案:

答案 0 :(得分:7)

  

他想要的是,当他按下最后一个活动(屏幕)上的按钮时,用户应该转到主页活动(开始屏幕或第一个屏幕)。

面试官应该为自己的替代者进行​​面试,如果他认为以这种方式攻击BACK按钮是个好主意。

  

所以我认为,我不能使用Intent,因为它会创建Starting Activity的新实例。

FLAG_ACTIVITY_REORDER_TO_FRONTFLAG_ACTIVITY_CLEAR_TOPFLAG_ACTIVITY_SINGLE_TOP的组合添加到与Intent一起使用的startActivity(),以显示您的“家庭活动”。这两种情况都会导致现有的“家庭活动”实例出现在前台。如果您希望销毁所有其他活动,请使用第二种方法(FLAG_ACTIVITY_CLEAR_TOPFLAG_ACTIVITY_SINGLE_TOP)。