Android Studio 安卓活动的生命周期和启动模式

一.活动状态

每个活动在其生命周期中最多可能会有4种状态

1. 运行状态

当一个活动位于返回栈的栈顶时,这时活动就处于运行状态。

2. 暂停状态

当一个活动不再处于栈顶位置,但仍然可见时,这时活动就进入了暂停状态。

3. 停止状态

当一个活动不再处于栈顶位置,并且完全不可见的时候,就进入了停止状态。

4. 销毁状态

当一个活动从返回栈中移除后就变成了销毁状态。

生命周期示意图

在这里插入图片描述

二.活动的生存期

  1. onCreate()。每个活动中我们都重写了这个方法,它会在活动第一次被创建的时候调用。
  2. onStart()。这个方法在活动由不可见变为可见的时候调用。
  3. onResume()。这个方法在活动准备好和用户进行交互的时候调用。
  4. onPause()。这个方法在系统准备去启动或者恢复另一个活动的时候调用。
  5. noNstop()。这个方法在活动完全不可见的时候调用。
  6. onDestroy()。这个方法在活动被销毁之前调用,之后活动的状态将变为销毁状态。
  7. onRestart()。这个方法在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了

可以在代码里面体现:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.e("masg", "1.activity----onCreate创建");
    }

    @Override
    protected void onStart() {
        super.onStart();
        Log.e("msg", "2.activity-----onStart执行");
    }

    @Override
    protected void onResume() {
        super.onResume();
        Log.e("msg", "3.activity-----onResume焦点");
    }

    @Override
    protected void onPause() {
        super.onPause();
        Log.e("msg", "4.activity-----onPause暂停");
    }

    @Override
    protected void onStop() {
        super.onStop();
        Log.e("msg", "5.activity-----onStop停止");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.e("msg", "7.activity-----onDestroy销毁");
    }

    @Override
    protected void onRestart() {
        super.onRestart();
        Log.e("msg", "6.activity-----onRestart重启");
    }

三.活动启动模式

  1. standard–会创建新的活动,依次返回。
  2. singleTop–当活动位于栈顶,不会创建新的页面。如果改变栈顶,还是会创建当前页面。
  3. singleTask–当存在活动时,不会创建新的活动,当返回时,直接退出。
  4. singleInstance–创建新的栈,可以与其它应用共用,返回时,每个栈返回完才返回下一个栈。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值