在乙個activity中,多次呼叫startactivity()來啟動另乙個activity,要想只生成乙個activity例項,方法有兩種。
[b]方法一:設定起動模式 [/b]
乙個activity有四種啟動模式:standard, singletop, singletask, singleinstance。
standard: 標準模式,一呼叫startactivity()方法就會產生乙個新的例項。
singletop: 如果已經有乙個例項位於activity棧的頂部時,就不產生新的例項,而只是呼叫activity中的newinstance()方法。如果不位於棧頂,會產生乙個新的例項。
singletask: 會在乙個新的task中產生這個例項,以後每次呼叫都會使用這個,不會去產生新的例項了。
singleinstance: 這個跟singletask基本上是一樣,只有乙個區別:在這個模式下的activity例項所處的task中,只能有這個activity例項,不能有其他的例項。
這些啟動模式可以在功能清單檔案中進行設定,中的launchmode屬性。
[b]方法二:在intent中加標誌 [/b]
intent.flag_activity_reorder_to_front這個標誌表示:如果這個activity已經啟動了,就不產生新的activity,而只是把這個activity例項加到棧頂來就可以了。
**如下:
intent intent = new intent(reorderfour.this, reordertwo.class);
intent.addflags(intent.flag_activity_reorder_to_front);
startactivity(intent);
android 只起乙個Activity例項
在乙個activity中,多次呼叫startactivity 來啟動另乙個activity,要想只生成乙個activity例項,方法有兩種。b 方法一 設定起動模式 b 乙個activity有四種啟動模式 standard,singletop,singletask,singleinstance。st...
Android學習筆記1 建立乙個activity
內容均為google官方教程的學習筆記 實際執行效果 要點 1 對view可以指定寬度和長度為wrap content,即view可以根據其content的長寬來動態適應.比如上圖的text裡的輸入,如果換行,也會撐大text的高度.2 線性布局中可以用weight屬性來分配和填充布局的剩餘空間,如...
乙個apk呼叫另乙個apk的某個activity
功能 caller.apk呼叫callee.apk中的calleemainactivity和calleeloweractivity。定義 caller.apk 去呼叫的apk,包名為com.caller callee.apk 被呼叫的apk,包名為com.callee calleemainactiv...