有关于Activity的生命周期

首先我们来看一下google给我们Activity生命周期的图片。

有关于Activity的生命周期_第1张图片

从图片中我们可以看出关于Activity的生命周期有,onCreate,onStart,onResume,onRestart,onPause,onStop,onDestroy这7种生命周期。下面我们来了解他们的含义,这些生命周期的方法到底是什么时候执行的。

  • onCreate()当Activity界面创建的时候来调用该方法。
  • onStart() 当Activity界面用户可见的时候调用该方法。
  • onRestart()当Activity没有被销毁,冲洗启动的时候,会先执行onRestart-->onStart-->onResume。一般不会用到。
  • onResume()当Activity界面获取焦点的时候(界面按钮可以被点击,文本框可以输入内容)。
  • onPause 当Activity界面失去焦点的时候(界面按钮不可以被点击,文本框不可以输入内容,但是界面,用户仍然能看见)。
  • onStop() 当Activity界面用户不可见时。
  • onDestroy 当Activity被销毁的时候。

可将android的生命周期分为三种

  • 完整生命周期  oncreate--》onstart--》onresume--》onpause--》onstop--》ondestory

  • 可视生命周期  onstart--》onresume--》onpause--》onstop

  • 前台生命周期  onresume--》onpause  界面用户仍然可见,但是失去焦点

他们的使用场景

  • 应用程序退出自动保存数据   ondestory   oncreate
  • 应用程序最小化 暂停的操作  onstop onstart  视频播放器
  • 游戏的暂停和开始 前台生命周期

下面说一下android横竖屏切换的生命周期

android在进行横竖屏切换的时候会先将Activity销毁,然后在重新创建Activity。具体的执行生命周期方法是:

首先执行onpause--》onstop--》ondestory,然后oncreate--》onstart--》onresume

所以有两种方法来控制横竖屏的生命周期

  • 首先第一种是直接在Menifest文件中设置Activity的android:screenOrientation="landscape"
  • 第二种方法是在Menifest文件中设置Activity的android:configChanges="orientation|keyboardHidden|screenSize"这三个属性(在android 4.0之前不用配置screenSize这个属性也可以。但是在4.0以后必须配置screenSize才行)。




你可能感兴趣的:(Android一些总结)