轉載:http://www.cnblogs.com/allenzheng/archive/2013/04/28/3050065.html
當應用運行起來后就會開啟一條線程,線程中會運行一個任務棧,當Activity實例創建后就會放入任務棧中。Activity啟動模式的設置在AndroidManifest.xml文件中,通過配置Activity的屬性android:launchMode=""設置。
1. Standared模式(默認)
我們平時直接創建的Activity都是這種模式的Activity,這種模式的Activity的特點是:只要你創建了Activity實例,一旦激活該Activity,則會向任務棧中加入新創建的實例,退出Activity則會在任務棧中銷毀該實例。
2. SingleTop模式
這種模式會考慮當前要激活的Activity實例在任務棧中是否正處于棧頂,如果處于棧頂則無需重新創建新的實例,會重用已存在的實例,否則會在任務棧中創建新的實例。
3. SingleTask模式
如果任務棧中存在該模式的Activity實例,則把棧中該實例以上的Activity實例全部移除,調用該實例的newInstance()方法重用該Activity,使該實例處於棧頂位置,否則就重新創建一個新的Activity實例。
4. SingleInstance模式
當該模式Activity實例在任務棧中創建后,只要該實例還在任務棧中,即只要激活的是該類型的Activity,都會通過調用實例的newInstance()方法重用該Activity,此時使用的都是同一個Activity實例,它都會處于任務棧的棧頂。此模式一般用于加載較慢的,比較耗性能且不需要每次都重新創建的Activity。
posted on 2015-06-24 18:10
Terry Zou 閱讀(471)
評論(0) 編輯 收藏 所屬分類:
Android