2013-07-01 38 views
1

問題很簡單:是否有意向標誌,其工作方式與按下後退按鈕完全相同? (使活動從左側滑動)Android - 意圖「回到」任務堆棧

我需要一個像moveTaskToBack(true)一樣工作的意圖(如果以前的活動在任務堆棧中)。

我曾嘗試使用FLAG_ACTIVITY_CLEAR_TOP調用Activity A(Main),但它並未從「堆棧」中獲取它。我認爲這是創建一個新的實例,因爲如果我按回來,我得到(目的未完成)活動B.

注意:我不想完成活動B因爲我需要前進到它在有些情況下,不會丟失已經加載的數據。

+0

發現了什麼? –

回答

0

如果您希望它位於堆棧的頂部並將A關閉,您可能需要使用FLAG_ACTIVITY_CLEAR_TOP調用活動B.

如果您不想活動A留在棧上,你可以把你的清單:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
switch (item.getItemId()) { 
     case android.R.id.home: 
     Intent intent = new Intent(this, ActivityA.class); 
     return(true); 
} 

return(super.onOptionsItemSelected(item)); 
} 

如果您正在使用:

<activity 
    android:name=".ActivityA" 
    android:noHistory="true"> 

從你的菜單上去活動A你必須把: android:launchMode =「singleTask」

在您的活動B清單。

希望這有助於。

+0

我希望A總是在堆棧上。我需要使用向上按鈕(即使用戶按下回家,玩過並回來),從堆棧中將A「退回」。 – Dandy

+0

您是否想讓活動A成爲您的主頁按鈕?如果您覺得需要,您也可以爲FLAG_ACTIVITY_CLEAR_TOP之間的其他活動做好準備。 – heLL0

+0

是的。活動A是主要活動。我已經從活動B開始了我的問題,因爲我需要知道如何以意向「回去」。 我對FLAG_ACTIVITY_CLEAR_TOP的測試沒有清除任務,我可以使用硬後退按鈕返回B(我不應該) – Dandy