2011-09-12 39 views
50

有人可以用非常簡單的方式解釋我FLAG_ACTIVITY_CLEAR_TOP是什麼意思?我知道有很多關於它的問題,但沒有一個答案讓我滿意。有人可以舉一個例子,這個標誌是有用的嗎?謝謝。Android中的FLAG_ACTIVITY_CLEAR_TOP

+0

請參閱此鏈接http://stackoverflow.com/questions/4342761/how-do-you-use-intent-flag-activity-clear-top-to-clear-the-activity-stack檢查也是這個鏈接解釋....................... http://mgmblog.com/2010/07/22/go-home-feature-with-flag_activity_clear_top/ –

+0

http ://stackoverflow.com/a/237186​​78/513413 – Hesam

回答

77

請檢查下面的鏈接相同的細節:

http://developer.android.com/reference/android/content/Intent.html

它的意思是:假設您有4個活動,A,B,C,和d,然後流程

甲 - >乙 - 「ç - > d

,現在當你在d要啓動活動B(從堆棧,而不是一個新的實例),那麼你可以使用這個意圖標誌。而且它所做的就是刪除B之上的所有其他活動(這裏是C和D)。

的實時例如將與活動的電子郵件應用程序 ReadMailInInbox - > OpenMailFullScreen - > ReplyMail一旦你回覆你的郵件,你不會想回去OpenMailFullScreen而你會希望你的ReadMailInInbox活動來在上面,所以你可以通過傳遞設置爲FLAG_ACTIVITY_CLEAR_TOP的標誌來啓動此活動。

希望這會有所幫助。

+0

非常感謝!猜猜,我終於明白這個國旗是做什麼的。 – lomza

+22

@Deva,所以要根據你的榜樣,取回後已經存在活動B的情況下,如你所說,活動C和D現在應該已經從堆棧中清除了。但我測試過,如果我打回活動B鍵,活動d仍顯示。爲什麼? – anonim

+2

@anonim,可能的問題可以在'launchMode'中。您需要使用'singleTask',而不是'singleInstance'。完美的解釋是在這裏http://stackoverflow.com/a/36111557/1219012 –

相關問題