【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
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容