当前位置:   article > 正文

Activity的4种启动模式_android inter 启动activity

android inter 启动activity

第一种:standard模式
Activity的默认启动模式,每当启动一个新的Activity,它就会进入任务栈,并且处于栈顶的位置,处于这种模式下,系统不会判断该Activity在栈中是否存在,每次启动都会创建一个新的实例。
适用于绝大多数的应用场景。
在java下建立FirstActivity、SecondActivity

public class FirstActivity extends AppCompatActivity{

private Button btnClick;

@Override

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
Log.d=("FirstActivity",this.toString());
btnClick= (Button) findViewById(R.id.btnClick);
btnClick.setOnClickListener(new OnClickListener() 
{
@Override
public void onClick(View v){
Inter intent=new Intent(FirstActivity.this,FirstActivity.class);
startActivity(intent);}
   }
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

activity_first.xml

<Button
android:text="toFirst"
android:drawableLeft="@mipmap/ic_launcher"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnClick"/>  //跳转按钮
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这里写图片描述
第二种:singtop模式
当启动的Activity已经位于栈顶时,直接使用;如果没有位于栈顶,则创建一个新的实例位于栈顶。
在manifests  AndroidManifest.xml 下修改

<activity android:name=".FirstActivity" android:launchMode="singleTop">
</activity>
<activity  android:name=".SecondActivity"></activity>
  • 1
  • 2
  • 3
  • 4

这里写图片描述
第三种:singleTask
系统首先会检查中是否存在该Activity的实例,如果发现已经存在则直接使用该实例,并将当前Activity之上的所有Activity出栈,如果没有发现则创建一个新的实例。
在manifests AndroidManifest.xml 下修改

<activity android:name=".FirstActivity" android:launchMode="singleTask">
</activity>
<activity  android:name=".SecondActivity"></activity>
  • 1
  • 2
  • 3
  • 4

修改FirstActivity

protected void onRestart(){
super.onRestart();
Log.d("FirstActivity","onRestart()");
  • 1
  • 2
  • 3

修改SecondActivity

protected void onDestroy(){
super.onDestroy();
Log.d("SecondActivity
","onDestroy()");
  • 1
  • 2
  • 3
  • 4

这里写图片描述
第四种:singleInstance模式
只会创建一个Actiity实例

这里写图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/编程探险家/article/detail/60719
推荐阅读
相关标签
  

闽ICP备14008679号