Android:Activity的七个生命周期方法以及四个生命状态

Activity的七个生命周期方法

  • onCreate:开启activity的第一个方法,这个方法会初始化setContentLayout()方法(屏幕绘制)
  • onStart:onCreate()方法完成后,此时activity进入了onStart()方法,当前activity是用户可见状态,但是还不能交互,再此课做一些动画的初始化操作。
  • onResume:onStart()后activity进入onResume方法,当前activity状态属于运行状态,(Running),此时的activity可见可交互。
  • onPause:在系统进行另一个activity是调用,吃饭发通常用于确认对于持久性的数据保存更改,动画的停止以及任何其他可能消耗cpu的内容,他必须迅速的执行所需的操作,该方法执行后,下一个Activity才能开始执行,该方法执行后应该执行onStop()方法
  • onStop:当Activity对与用户不在可见的时候调用,可能是被另一个Activity覆盖,或者退回到桌面,在onStop方法下系统内存紧张时,有可能会被系统回收
  • onDestory:在Activity被销毁前调用,这是Activity收到的最后调用,当Activity结束或者被系统销毁Activity实例的时候,会被调动该方法
  • onRestart:在Activity被停止后再次启动的时候调用,比如从桌面回到应用中时,然后调用onStart方法()

在这里插入图片描述

Activity的四个生命状态

Running >>> poused >>> stopped >>>killed

状态说明
Running当前显示在屏幕的Activity位于Activity任务栈的栈顶,用户可见并且可操作
Poused当前状态可见,但是界面焦点以已经失去,此Activity无法与用户交互
Stopped用户不可见也不可操作,可能被覆盖或者在后台,此时的Activity有可能被系统回收
Killed界面被销毁,等待被系统回收

系统内存不足时Paused也有可能会被系统回收

Starting ——–>Running : onCreate()->onstart()->onResume()
Running ——>Paused :执行onPause()
Paused ——>Running:执行onResume()
Paused ——>Stoped:执行onStop()
Stoped——>killed:执行onDestroy()

Activity代码演示:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        System.out.println("ACtivityA is Create");
    }
    @Override
    protected void onStart() {
        super.onStart();
        System.out.println("ActivityA is start");
    }
    @Override
    protected void onResume() {
        super.onResume();
        System.out.println("ActivityA is Resume");

    }
    @Override
    protected void onPause() {
        super.onPause();
        System.out.println("ActivityA is Pause");
    }
    @Override
    protected void onRestart() {
        super.onRestart();
        System.out.println("ActivityA is restart");
    }
    @Override
    protected void onStop() {
        super.onStop();
        System.out.println("ActivityA is Stop");
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        System.out.println("Activity is Destroy");
    }
}

应用启动时:
在这里插入图片描述

按下home时
在这里插入图片描述

再次点击应用图标回到Activity界面:
在这里插入图片描述

Activity的优先级

前台进程> 可见进程 >service进程> 后台进程 >空进程

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值