安卓Activity四種啓動模式詳解

1、對於使用standard 模式的活動,系統不會在乎這個活動是否已經在返回棧中存在,每次啓動都會創建該活動的一個新的實例。
例如A啓動A,A再接着啓動A,A繼續啓動A,然後再分別出棧,如圖所示
2、當活動的啓動模式指定爲 singleTop,在啓動活動時如果發現返回棧的棧頂已經是該活動,則認爲可以直接使用它,不會再創建新的活動實例。

3、當活動的啓動模式指定爲 singleTask,每次啓動該活動時系統首先會在返回棧中檢查是否存在該活動的實例,如果發現已經存在則直接使用該實例,並把在這個活動之上的所有活動統統出棧,如果沒有發現就會創建一個新的活動實例。

4、使用singleInstance 模式就可以解決這個問題,在這種模式下會有一個單獨的返回棧來管理這個活動,不管是哪個應用程序來訪問這個活動,都共用的同一個返回棧,也就解決了共享活動實例的問題。
假設B啓動A,A啓動C,其中A的啓動模式爲singleInstance,則:
返回的頁面順序是C-B-A

轉載請註明:Android開發中文站 » Activity的四種啓動模式-圖文並茂

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章