編輯:關於Android編程
本文實例分析了Android Activity啟動模式之singleTask。分享給大家供大家參考,具體如下:
前面的文章介紹了Android 活動Activity的啟動模式:standard 和singleTop 。本文繼續介紹Activity的下一個啟動模式:singleTask。
singleTask:當設置活動的啟動模式為singleTask時,首先檢查返回棧中是否存在當前活動,如果存在當前活動的實例,則直接使用當前實例,並把當前活動之上的所有活動pop出棧,即當前活動位於棧頂位置。
代碼實例如下:
(1)修改AndroidManifest.xml
修改活動MainActivity的啟動模式為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
為了測試效果,重寫onRestart方法:
@Override protected void onRestart() { super.onRestart(); Log.d("MainActivity", "onRestart"); }
(3)修改MyActivity1.java
為了測試效果,重寫onDestroy方法:
@Override protected void onDestroy() { super.onDestroy(); Log.d("MyActivity1", "onDestroy"); }
(3)重新發布,查看日志
發布程序,進入MainActivity活動,點擊按鈕進入MyActivity1活動,點擊按鈕回到主活動MainActivity,日志顯示如下:
從圖中可以看出,當在MyActivity1中點擊按鈕時,返回棧中此時存在一個主活動MainActivity的實例,並且在MyActivity1的下面,當點擊時,MyActivity1出棧,實例銷毀,調用onDestroy方法,而主活動則調用onRestart方法。
如果再次在主活動中點擊按鈕進入MyActivity1活動,此時會創建MyActivity1實例,再次返回,見日志如下:
這正是Activity啟動模式singleTask的特性。
更多關於Android Activity相關內容感興趣的讀者可查看本站專題:《Android編程之activity操作技巧總結》
希望本文所述對大家Android程序設計有所幫助。
本文實例講述了Android實現的仿淘寶購物車。分享給大家供大家參考,具體如下:夏的熱情漸漸退去,秋如期而至,豐收的季節,小編繼續著實習之路,走著走著,就走到了購物車,逛
谷歌的材料設計也發布了有一段時間了,包括官方的support庫 相信大家也熟悉了不少,今天就把actionbar 遷移到toolbar的 經驗發出來。 這個地方
好,我們還是先復習一下上上節學到的圖:在開始InlineMethod之前,我們再繼續補充一點BasicBlock的知識。BasicBlock中針對MIR的相關操作Appe
ViewStub可以在運行時動態的添加布局。幫助文檔給定的定義是:A ViewStub is an invisible, zero-sized View that can