1. 程式人生 > >22:LaunchMode應用場景

22:LaunchMode應用場景

1:SingleTop:如果位於棧頂,呼叫的時候不會生成新的activity,直接複用;

       如果不位於棧頂,呼叫的時候生成新的activity;

 場景:頂部生成notification的時候我們去點選這個通知,而這個通知跳轉的就是我們當前所在的頁面,用singleTop可以避免同樣的頁面多次開啟;

 

2:SingleTask:如果棧裡面存在該activity,呼叫的時候,activity上面的所有的activity全部移除,複用該activity。

 場景:無論介面在哪個地方,當我們跳轉到登入介面的時候,我們希望的是按返回鍵的時候,是退回到桌面的。這是用SingleTask,能保證

    無論是從哪個頁面跳轉過來的,我們按返回鍵都能退回到桌面。

 

3:SingleInstance:當該activity設定為SingleInstance, 呼叫的時候,會另起一個棧單獨儲存該acitvity;

   場景:我們的App需要呼叫另外一個應用的mActivity,如果是正常情況下,到這個mActivity介面之後,按返回鍵是不會返回到我們的應用的,應用

    mActivity所在的棧還有他們應用自己的很多的activity,只能回退到他們自己mActvity的前面一個activity;

    當我們應用SingleInstance的時候,呼叫mActivity會使mActivity另外單獨存在於一個棧,這時候按返回鍵就會返回到我們的應用。