2014-03-28 55 views
1

在我的應用程序刪除特定的之前的活動有一些活動,但是在特定的點「已經堆 otherActivities - > A - >乙 - >紐瓦 現在,我已經有些奇怪的事情要做: 如果我在B,我按下後退按鈕,我將返回A. - 如果我在newA並按回我不想看到A和B,但返回到活動堆棧(已經實現跳過B)從堆棧

+0

它不清楚你想要做什麼? –

+0

檢查這個http://stackoverflow.com/questions/20469023/android-outofmemory-error-and-the-backstack/20680484#20680484 –

回答

1

使用FLAG_ACTIVITY_CLEAR_TOP本應解決您的問題

Android docx

如果已設置,且正在啓動的活動已在當前任務中運行,則不會啓動該活動的新實例,而是關閉其上的所有其他活動,並將此Intent交付給作爲新的Intent的(現在在最上面的)舊活動。

例如,考慮由以下活動組成的任務:A,B,C,D。如果D調用startActivity()並解析爲活動B的組件,則C和D將完成,B接受給定的意圖,導致堆棧現在正在:A,B。

使用它像

Intent intent = new Intent(getApplicationContext(), 
    yourActivity.class); 
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

startActivity(intent); 

Activity with Flag FLAG_ACTIVITY_CLEAR_TOP (android)

+0

我會給它一個鏡頭:) –

+0

這是完全是我需要的,謝謝! :) –