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

Android Activity啟動(dòng)模式之singleTask實(shí)例詳解

 更新時(shí)間:2016年01月15日 16:34:54   作者:殘缺的孤獨(dú)  
這篇文章主要介紹了Android Activity啟動(dòng)模式之singleTask,結(jié)合實(shí)例形式較為詳細(xì)的分析了singleTask模式的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例分析了Android Activity啟動(dòng)模式之singleTask。分享給大家供大家參考,具體如下:

前面的文章介紹了Android 活動(dòng)Activity的啟動(dòng)模式:standardsingleTop 。本文繼續(xù)介紹Activity的下一個(gè)啟動(dòng)模式:singleTask。

singleTask當(dāng)設(shè)置活動(dòng)的啟動(dòng)模式為singleTask時(shí),首先檢查返回棧中是否存在當(dāng)前活動(dòng),如果存在當(dāng)前活動(dòng)的實(shí)例,則直接使用當(dāng)前實(shí)例,并把當(dāng)前活動(dòng)之上的所有活動(dòng)pop出棧,即當(dāng)前活動(dòng)位于棧頂位置

代碼實(shí)例如下:

(1)修改AndroidManifest.xml

修改活動(dòng)MainActivity的啟動(dòng)模式為singleTask,如下:

<activity
     android:name=".MainActivity"
     android:launchMode="singleTask"
     android:label="@string/app_name" >
     <intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

(2)修改MainActivity.java

為了測(cè)試效果,重寫onRestart方法:

@Override
protected void onRestart() {
  super.onRestart();
  Log.d("MainActivity", "onRestart");
}

(3)修改MyActivity1.java

為了測(cè)試效果,重寫onDestroy方法:

@Override
protected void onDestroy() {
    super.onDestroy();
    Log.d("MyActivity1", "onDestroy");
}

(3)重新發(fā)布,查看日志

發(fā)布程序,進(jìn)入MainActivity活動(dòng),點(diǎn)擊按鈕進(jìn)入MyActivity1活動(dòng),點(diǎn)擊按鈕回到主活動(dòng)MainActivity,日志顯示如下:

從圖中可以看出,當(dāng)在MyActivity1中點(diǎn)擊按鈕時(shí),返回棧中此時(shí)存在一個(gè)主活動(dòng)MainActivity的實(shí)例,并且在MyActivity1的下面,當(dāng)點(diǎn)擊時(shí),MyActivity1出棧,實(shí)例銷毀,調(diào)用onDestroy方法,而主活動(dòng)則調(diào)用onRestart方法。

如果再次在主活動(dòng)中點(diǎn)擊按鈕進(jìn)入MyActivity1活動(dòng),此時(shí)會(huì)創(chuàng)建MyActivity1實(shí)例,再次返回,見(jiàn)日志如下:

這正是Activity啟動(dòng)模式singleTask的特性。

更多關(guān)于Android Activity相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android編程之a(chǎn)ctivity操作技巧總結(jié)

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論