啟動模式有四種:standard、singletop、singletask和singleinstance,啟動模式可以在androidmanifest.xml中通過給標籤指定android:launchmode屬性來設定。
四種屬性各有不同;
(1) standard 活動預設的啟動模式,每當啟動乙個活動時,就會在返回棧中入棧,並處於棧頂的位置。standard系統不會在乎這個活動是否已經在返回棧中存在,每次啟動都會建立該活動的乙個新的例項;
(2) singletop 避免了重複建立棧頂活動,android:launchermode=「singletop」在啟動活動時如果發現返回棧的棧頂已經是該活動,則認為可以直接使用它,不會再建立新的活動例項。如果沒在棧頂,則會重新建立乙個活動例項。
(3) singletask 當活動的啟動模式指定為singletask,每次啟動該活動時系統首先會在返回棧中檢查是否存在該活動的例項,如果發現已經存在則直接使用該例項(onrestart()),並把在這個活動之上的所有活動統統出棧,如果沒有發現就會建立乙個新的活動例項。
(4) singleinstance 解決了共享活動例項的問題;會有乙個單獨的返回棧來管理這個活動,不管哪個應用程式來訪問這個活動,都共用的同乙個返回棧。按back鍵時先出完乙個返回棧的再去出另乙個返回棧的活動例項。
android 活動的啟動模式
分四種 standard,singletop singletask singleinstance。可以在androidmanifest.xml中通過給標籤指定android launchmode屬性來選擇啟動模式 standard是活動預設的啟動模式,在不進行顯式指定的情況下,所有活動都會自動使用這...
Android活動的啟動模式
實際專案中我們應該根據特定的需求為每個活動指定恰當的啟動模式。啟動模式一共有 4 種,分別standard 標準 singletop singletask和singleinstance,可以在 androidmanifest.xml 中通過給標籤指定 android launchmode 屬性來選擇...
Android, 啟動活動的最佳寫法
啟動活動的方法相信你已經非常熟悉了,首先通過intent構建出當前的 意圖 然後呼叫startactivity或startactivityforresult方法將活動啟動起來,如果有資料需要從乙個活動傳遞到另乙個活動,也可以借助intent來完成。假設secondactivity中需要用到兩個非常重...