1. 程式人生 > >同一Activity例項被多次重複建立的解決方法

同一Activity例項被多次重複建立的解決方法

如此這般配置即可。在AndroidManifest.xml檔案中
<activity
            android:name="com.lxXxxxyActivity"
           android:launchMode="singleInstance" >
</activity>

這樣設定就好了。
在AndroidManifest.xml中的<activity>標籤中可以配置android:launchMode屬性,用來控制Actvity的啟動模式
在Android系統中我們建立的Acitivity是以棧的形式呈現的,
每個應用都有獨立的任務棧Task.一個棧中可以有多個Activity.

啟動另一個應用的Activity,會把那個應用的棧也移到前面,(棧裡面可能還有這個應用的其它的Activity)
standard:每次呼叫startActivity()啟動時都會建立一個新的Activity放在棧頂
  注:預設都是這個模式
singleTop:啟動Activity時,指定Activity不在棧頂就建立,如在棧頂,則不再建立
  注:不會出現兩個相同的Activity相鄰
singleTask:如果啟動的Activity不存在就建立Activity,如果存在直接跳轉到指定的Activity所在位置
  注:在其上面的Activity會被移出棧,也就是一個棧中不能有重複的Activity
singleInstance:如果啟動的Activity不存在就建立一個Activity同時建立一個棧,如果存在就將指定的Activity存在的棧移動到棧頂

  注:表示這個Activity只能存在於一個獨立的任務棧中,同應用的其它Activity與其無關.