2013-02-02 62 views
0

在採訪中有人問我這個問題。假設在應用程序中有4個活動。他希望後退按鈕在前三個活動中正常工作(即按下後退按鈕前一個屏幕);除了最後一個。如何在不使用意向的情況下打開任何其他活動的首頁活動

他想要的是,當他按下第四個活動(屏幕)上的按鈕時,用戶應該進入家庭活動(開始屏幕或第一屏幕)。但是當用戶從第一個屏幕到第二個屏幕時,Home Activity中的內容應該是相同的。所以我想,我不能使用Intent,因爲它會創建Starting Activity的新實例。

回答

7

他想要的是,當他按下上一個活動(屏幕)上的按鈕時,用戶應該進入家庭活動(開始屏幕或第一屏幕)。

面試官應該爲他或她自己的替補面試,如果他認爲以這種方式攻擊BACK按鈕是個好主意。

所以我想,我不能使用Intent,因爲它會創建Starting Activity的新實例。

添加FLAG_ACTIVITY_REORDER_TO_FRONTFLAG_ACTIVITY_CLEAR_TOP組合和FLAG_ACTIVITY_SINGLE_TOPstartActivity()用來使你的「家庭活動」的Intent。要麼會導致現有的「家庭活動」實例出現在前臺。如果您想要銷燬所有其他活動,請使用第二種方法(FLAG_ACTIVITY_CLEAR_TOPFLAG_ACTIVITY_SINGLE_TOP)。

相關問題