【问题标题】:how to open Home Activity from any another Activity without using Intent如何在不使用 Intent 的情况下从任何其他 Activity 打开 Home Activity
【发布时间】:2013-02-02 21:11:41
【问题描述】:
在一次采访中,有人问我这个问题。假设应用程序中有 4 个活动。他希望后退按钮在前三个活动上正常工作(即在后退按钮按下时进入上一个屏幕);除了最后一个。
他希望,当他在第四个活动(屏幕)上按下返回按钮时,用户应该转到主活动(开始屏幕或第一个屏幕)。但是当用户从第一个屏幕转到第二个屏幕时,Home Activity 上的内容应该是相同的。所以我认为,我不能使用 Intent,因为它会创建启动 Activity 的新实例。
【问题讨论】:
标签:
android
button
android-activity
back
launching
【解决方案1】:
他希望,当他在最后一个活动(屏幕)上按下返回按钮时,用户应该转到主活动(开始屏幕或第一个屏幕)。
如果面试官认为以这种方式敲击“返回”按钮是个好主意,则面试官应该为自己的替代者进行面试。
所以我认为,我不能使用 Intent,因为它会创建新的启动 Activity 实例。
将FLAG_ACTIVITY_REORDER_TO_FRONT 或FLAG_ACTIVITY_CLEAR_TOP 和FLAG_ACTIVITY_SINGLE_TOP 的组合添加到与startActivity() 一起使用的Intent 以调出您的“家庭活动”。要么将导致现有的“家庭活动”实例出现在前台。如果您希望销毁所有其他活动,请使用第二种方法(FLAG_ACTIVITY_CLEAR_TOP 和 FLAG_ACTIVITY_SINGLE_TOP)。