Activity的四種啟動模式

2021-08-20 13:17:03 字數 1541 閱讀 9157

activity的四種啟動模式

啟動模式介紹

通過androidmanifest.xml中android:launchmode屬性,設定activityd啟動模式。

啟動模式分別為standard、singletop、singletask、singleinstance。

1、standard

標準的啟動模式,在回退棧中,每次訪問啟動的activity都是乙個全新的activity。

特點:每次啟用activity時(startactivity),都建立activity例項,並放入任務棧。

2、singletop
棧頂單一,在回退棧中,如果開啟的activity就是棧頂的activity, 將重用棧頂的這個activity。

特點:如果某個activity自己啟用自己,即任務棧棧頂就是該activity,則不需要建立,其餘情況都要建立activity例項。

3、singletask
棧內唯一,在回退棧中,如果開啟乙個棧中已存在的activity,它會把這個activity之上的所有activity都殺死,從而保證棧內唯一。

特點:如果要啟用的那個activity在任務棧中存在該例項,則不需要建立,只需要把此activity放入棧頂,並把該activity以上的activity例項都pop。

應用:可以用來退出整個應用。將主activity設為singtask模式,然後在要退出的activity中轉到主activity,然後重寫主activity的onnewintent函式,

並在函式中加上一句finish。

表示一種單例模式。它表示在所有的回退棧(對應乙個程序)中都是唯一的。
特點:如果應用1的任務棧中建立了mainactivity例項,如果應用2也要啟用mainactivity,則不需要建立,兩應用共享該activity例項。

Activity四種啟動模式

launchmode在多個activity跳轉的過程中扮演著重要的角色,它可以決定是否生成新的activity例項,是否重用已存在的activity例項,是否和其他activity例項公用乙個task裡。這裡簡單介紹一下task的概念,task是乙個具有棧結構的物件,乙個task可以管理多個acti...

Activity四種啟動模式

activity的啟動模式可以通過androidmanifest.xml檔案中的元素的屬性來指定,一共有4中模式 android name activitymain android launchmode singletask 1 standard 2 singletop 3 singletask 4...

Activity 四種啟動模式

activity有四種載入模式 standard 預設 singletop,singletask和 singleinstance。以下逐一舉例說明他們的區別 一 standard activity的預設載入方法,即使某個activity在task棧中已經存在,另乙個activity通過intent跳...