【Android】Activity的生命周期

Activity的生命周期

为了在 Activity 生命周期的各个阶段之间导航转换,Activity 类提供六个核心回调:onCreate()、onStart()、onResume()、onPause()、onStop() 和 onDestroy()。当 Activity 进入新状态时,系统会调用其中每个回调。


activity_lifecycle.png

单个Activity的生命周期

用户可见,持有焦点(可以做输入,点击等操作)

onCreate()

  • 您必须实现此回调,它会在系统首次创建 Activity 时触发。Activity 会在创建后进入“已创建”状态。

常见用法

 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
 }

onStart()

onResume()

  • onStart() 和 onResume() 几乎总是同时执行

用户不可见状态,失去焦点(不可输入,点击)

onPause()

  • 当前页面退出在后台时触发(尽管在用户处于多窗口模式时 Activity 仍然可见)

onStop()

  • 当 Activity 对用户不再可见时,系统会调用 onStop()。出现这种情况的原因可能是 Activity 被销毁,新的 Activity 启动,或者现有的 Activity 正在进入“已恢复”状态并覆盖了已停止的 Activity。在所有这些情况下,停止的 Activity 都将完全不再可见
  • 系统调用的下一个回调将是 onRestart()(如果 Activity 重新与用户互动)或者 onDestroy()(如果 Activity 彻底终止)

onRestart()

  • 用户从其他Activity 返回该Activity 时会触发
  • 当处于“已停止”状态的 Activity 即将重启时,系统就会调用此回调。会从 Activity 停止时的状态恢复 Activity
  • 此回调后面总是跟着 onStart()

onDestroy()

  • 系统会在销毁 Activity 之前调用此回调。

2个Activity的生命周期

image.png

你可能感兴趣的:(【Android】Activity的生命周期)