Android開發 之 Activity啓動模式

Activity啓動模式

1 Standard模式

Standard模式是Android的默認啓動模式,你不在配置文件中做任何設置,那麼這個Activity就是standard模式,這種模式下,Activity可以有多個實例,每次啓動Activity,無論任務棧中是否已經有這個Activity的實例,系統都會創建一個新的Activity實例

 

2 SingleTop模式

SingleTop模式和standard模式非常相似,主要區別就是當一個singleTop模式的Activity已經位於任務棧的棧頂,再去啓動它時,不會再創建新的實例,但會調用Acitivity中的onNewIntent方法;如果不位於棧頂,就會創建新的實例,現在把配置文件中FirstActivity的啓動模式改爲SingleTop,我們的應用只有一個Activity,FirstActivity自然處於任務棧的棧頂。

 

3 SingleTask模式

         SingleTask模式的Activity在同一個Task內只有一個實例,如果Activity已經位於棧頂,系統不會創建新的Activity實例,但會調用onNewIntent函數,和singleTop模式一樣。但Activity已經存在但不位於棧頂時,系統就會把該Activity移到棧頂,並把它上面的activity出棧。

 

4 SingleInstance模式

singleInstance模式也是單例的,但和singleTask不同,singleTask只是任務棧內單例,系統裏是可以有多個singleTask Activity實例的,而singleInstance Activity在整個系統裏只有一個實例,啓動一singleInstanceActivity時,系統會創建一個新的任務棧,並且這個任務棧只有他一個Activity。

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