欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Activity 四種啟動(dòng)模式詳細(xì)介紹

 更新時(shí)間:2017年02月24日 15:27:18   作者:xyTianZhao  
這篇文章主要介紹了Activity 四種啟動(dòng)模式詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下

Activity 四種啟動(dòng)模式詳細(xì)介紹

在Android中每個(gè)界面都是一個(gè)Activity,切換界面操作其實(shí)是多個(gè)不同Activity之間的實(shí)例化操作。在Android中Activity的啟動(dòng)模式?jīng)Q定了Activity的啟動(dòng)運(yùn)行方式。

Android總Activity的啟動(dòng)模式分為四種:

Activity啟動(dòng)模式設(shè)置: 
 
    <activity android:name=".MainActivity" android:launchMode="standard" /> 
    <activity android:name=".MainActivity" android:launchMode="singleTop" />     
    <activity android:name=".MainActivity" android:launchMode="singleTask" /> 
    <activity android:name=".MainActivity" android:launchMode="singleInstance" /> 

Activity的四種啟動(dòng)模式:

. standard

模式啟動(dòng)模式,每次激活A(yù)ctivity時(shí)都會(huì)創(chuàng)建Activity,并放入任務(wù)棧中。

. singleTop

如果在任務(wù)的棧頂正好存在該Activity的實(shí)例, 就重用該實(shí)例,否者就會(huì)創(chuàng)建新的實(shí)例并放入棧頂(即使棧中已經(jīng)存在該Activity實(shí)例,只要不在棧頂,都會(huì)創(chuàng)建實(shí)例)。

. singleTask

如果在棧中已經(jīng)有該Activity的實(shí)例,就重用該實(shí)例(會(huì)調(diào)用實(shí)例的onNewIntent())。重用時(shí),會(huì)讓該實(shí)例回到棧頂,因此在它上面的實(shí)例將會(huì)被移除棧。如果棧中不存在該實(shí)例,將會(huì)創(chuàng)建新的實(shí)例放入棧中。

. singleInstance

在一個(gè)新棧中創(chuàng)建該Activity實(shí)例,并讓多個(gè)應(yīng)用共享改棧中的該Activity實(shí)例。一旦改模式的Activity的實(shí)例存在于某個(gè)棧中,任何應(yīng)用再激活改Activity時(shí)都會(huì)重用該棧中的實(shí)例,其效果相當(dāng)于多個(gè)應(yīng)用程序共享一個(gè)應(yīng)用,不管誰激活該Activity都會(huì)進(jìn)入同一個(gè)應(yīng)用中。

注:當(dāng)為第四種啟動(dòng)方式時(shí),點(diǎn)擊返回鍵時(shí)activity的釋放順序回有所不同,如:FirstActivity設(shè)置為singleInstance,啟動(dòng)Activity的順序?yàn)镸ain->First->Main->first->main,會(huì)有如下兩個(gè)activity棧:


當(dāng)點(diǎn)擊返回鍵時(shí),Activity的釋放順序如下:先時(shí)釋放掉Task1中的三個(gè)MainActivity,然后再釋放Task2中的FirstActivity。


感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

最新評論