2.5.1 standa模式
修改ActivityTest中的firstActivity中的
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.first_layout);
Log.d("FirstAcivity", this.toString());
Button button1 = (Button) findViewById(R.id.button_1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(FirstActivity.this,FirstActivity.class);
startActivityForResult(intent,1);
}
});
}
}`
会出现三次
2.2.5 singleTop
<activity
android:name=".FirstActivity"
android:launchMode="singleTop"
android:label="This is first activity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
(这里我实验失败诶,还是会创建多个firstActivity,跳转时启动活动的方法是startActivityForResult()
换成startActivity()就正常。)
2.5.3 singleTask
2.5.4 singleInstance
遇到的问题
创建三个活动,firstActivity,SecondActivity,ThirdActivity。从1启动2,从2 启动3,并在logcat中显示taskID
2 的id应该不同于1和3,但是实验出现了错误
把FirstActivity中的startActivityForResult()换成startActivity()问题就解决了。