安卓學習之Activity啓動模式

Activity一般有4種啓動模式,如果需要使用其他的啓動模式,請在activity節點加入配置

即可,加入android:lanuchMode。

1.standard(標準)

  • 默認的啓動模式,每次都是創建一個新的activity啓動.
  • 當任務棧中存在1 2 3個activity時,打開3號的activity會創建一個新的3號activity

配置代碼如下

android:launchMode="standard"

2.singleTop(頂部單一)

  • 如果要啓動的activity已經在頂部存在,不會創建新的實例,而是調用onNewIntent()方法

3.singleTask(棧中唯一)

  • 只存在不同的activity的一個實例
  • 當創建第二個activity和一個實例相同時,清空任務棧。

4.singleInstance

activity在單獨的任務棧中,當存在activity爲這種啓動模式的時候,創造一個單獨的任務棧存放這個activity

5.可以使用intent達到這種意圖

Intent intent=new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//啓動的activity在新的任務棧中

重要的FLag

1.FLAG_ACTIVITY_NEW_TASK

2.FLAG_ACTIVITY_SINGLE_TOP
3.FLAG_ACTIVITY_CLEAR_TASK 相當於singleTask

4.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS以這種模式拿A啓動B時,A會被銷燬。

 

 

發佈了136 篇原創文章 · 獲贊 9 · 訪問量 8074
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章