第1期:Activity的生命周期

Activity的生命周期

18735-439610bd819d14ce.png

Activity常见知识点

1. 介绍下Activity的各个生命周期及其作用?

  1. onCreate():表示Activity正在创建,此时界面不可见;可以在这个方法里初始化控件,初始化数据等操作。
  2. onStart():表示Activity正在启动,界面可见但不可交互;可用于界面刷新工作,比如设置控件可见性、开启动画等;Activity每次从后台进入前台,均会执行onStart()方法。
  3. onResume():表示Activity已进入前台,可以与用户进行交互;可用于收集页面打开率,用户活跃度等数据。
  4. onPause():表示Activity正在停止,界面仍然可见但已失去焦点;可以在这个方法里停止动画,保存数据等操作。
  5. onStop():表示Activity已进入后台,界面不可见;可用于取消网络连接,注销广播接收器等操作。
  6. onDestroy():表示Activity即将被销毁,界面不可见;可用于数据销毁,资源回收等操作。

2. Activity从前台进入后台,到再被用户从后台切换到前台,会依次执行哪些方法?

  1. Activity从前台进入后台时会依次执行:onPause() > onStop()
  2. Activity从后台进入前台时会依次执行:onRestart() > onStart() > onResume()

3. 当后台的Activity因内存不足被系统强制回收后,再次唤起会依次执行哪些方法?

  1. 当后台的Activity因内存不足被回收后,该Activity虽未执行onDestroy(),但已经被销毁。
  2. 再次唤起该Activity时,会重新创建该Activity,会重新执行onCreate() > onStart() > onResume()。

4. 哪些情况下销毁Activity不会执行onDestroy()方法?

当Activity异常退出时,不会执行onDestroy()方法。主要有以下3种情况:

  1. Activity内的代码抛出异常导致Activity崩溃。
  2. 因系统内在不足,后台Activity被强制回收。
  3. 用户从最近应用列表杀进程退出Activity。

猜你喜欢

转载自blog.csdn.net/weixin_34026276/article/details/87782319