Activity启动方式有四种,分别是:
standard
singleTop
singleTask
singleInstance
一:首先是standard:
在这里说明一下:默认模式,可以不用写配置。在这个模式下,都会默认创建一个新的实例。因此,在这种模式下,可以有多个相同的实例,也允许多个相同Activity叠加。
例如:若我有一个Activity名为A1, 上面有一个按钮可跳转到A1。那么如果我点击按钮,便会新启一个Activity A1叠在刚才的A1之上,再点击,又会再新启一个在它之上……
点back键会依照栈顺序依次退出。
package cn.edu.bzu.activitydemo; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity { private Button btnClick; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d("MainActivity",this.toString()); btnClick=(Button)findViewById(R.id.btnClick); btnClick.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v){ Intent intent=new Intent(MainActivity.this,MainActivity.class); startActivity(intent); } }); } }以上为Standard的代码。在layout中创建一个Button即可。
接下来利用模拟器打开为:
在这里想要看出Standard的特点
在这里点击一下TOFIRST;
可以看出,已经运行了这个小程序。