現在有乙個需求。從a跳到b,然後b跳到c,c再跳到a,看似很簡單的就可以實現,但是當簡單的跳轉後,發現棧中的activity順序從下到上一次是abca,當我最後跳到a時,返回鍵時,首先出來的是c,依次是b,然後還是a,實際中,這樣是不符合邏輯的,這裡我們就用到了activity的啟動模式。
我們將a的啟動模式設定為singtask,
在manifest中新增如下屬性:
<activityandroid:name="cn.doolii.activity.user.easybidact"android:launchmode="singletask"android:screenorientation="portrait">
含義是:當我們需要跳轉到a時,只要棧中有a,就會直接跳到a,同時將他上面的所有activity都乾掉,這樣我們就可以做到當從c跳轉到a的時候,同時將bc乾掉,再按返回鍵的時候,就會退出程式。
android 啟動模式
啟動模式是通過在androidmanifest.xml中activity標籤中的launchmode設定的 android launchmode指示應該如何載入乙個activity.總共有四種啟動模式,他們一般配合activity啟動標記 flag activity 常量 一起使用來決定當載入乙個a...
Android啟動模式
android使用棧來管理activity。android的 啟動模式共4種分別為standard singletop singletask singleinstance。假如firstactivity在棧頂,此時如果繼續構建firstactivity,還會繼續構建firstactivity 如果f...
Android 啟動模式(launchMode)
通過 adb shell dumpsys activity 對於4種launchmode進行分析 standerd 標準啟動模式,在每次啟動activity時都會建立乙個新的activity。歸屬棧 activity會被壓入啟動它的activity所在棧。singletop 如果activity在棧...