安卓学习——四大组建之Activity生命周期

来源:互联网 发布:社会化网络的意义 编辑:程序博客网 时间:2024/05/20 11:47

安卓四大组建之Activity生命周期


安卓四大组建是每个安卓开发学习者所必须学习、熟识的,只有了解了安卓的四大组建,才能够更好的进行安卓开发。

安卓四大组建中的Activity生命周期也是非常重要的,一个想要开发出一个好的安卓APP的安卓开发学习者都必须要了解Activity生命周期,只有了解了Activity生命周期,才能更好的解决页面间跳转等问题。

Activity的生命周期被以下函数控制着:

  1. onCreate(Bundle icicle); 当第一次调用一个Activity就会执行onCreate方法
  2. onStart(); 当Activity处于可见状态的时候就会调用onStart方法
  3. onRestart(); 当Activity没有被销毁的时候重新调用这个Activity就会调用
  4. onResume(); 当Activity可以得到用户焦点的时候就会调用onResume方法
  5. onPause(); 当Activity被遮挡住的时候就会调用onPause方法
  6. onStop(); 当Activity处于不可见状态的时候就会调用onStop方法
  7. onDestroy(); 当Activity被销毁时会调用onDestory方法

在深入了解Activity生命周期之前,我们需要先了解Activity的四种状态:

  • Runing 当Activity位于栈顶时,此时正好处于屏幕最前方,此时处于运行状态
  • Paused 当 Activity 被另一个透明或者 Dialog 样式的 Activity 覆盖时的状态。此时它依然与窗口管理器保持连接,系统继续维护其内部状态,所以它仍然可见,但它已经失去了焦点故不可与用户交互,此时处于暂停状态
  • Stoped 当Activity被其他Activity完全遮挡,此时此Activity对用户不可见,此时处于停止状态
  • Killed 当Activity被系统杀死回收或者没有被启动,此时处于销毁状态

在不同的状态会按顺序执行不同的函数,下面看一张经典的生命周期流程图
来自官方文档
让我们用文字详细的分析这张图:

  • 当我们启动一个Activity时,系统会先调用onCreate方法,然后调用onStart方法,最后调用onResume,Activity进入运行状态。
  • 当前Activity被其他Activity覆盖其上或被锁屏时,系统会调用onPause方法,Activity进入暂停状态。
  • 当前Activity由被覆盖状态回到前台或解锁屏时,系统会调用onResume方法,Activity再次进入运行状态。
  • 当前Activity转到新的Activity界面或按Home键回到主屏,自身退居后台时,系统会先调用onPause方法,然后调用onStop方法,Activity进入停止状态。
  • 用户后退回到此Activity时,系统会先调用onRestart方法,然后调用onStart方法,最后调用onResume方法,Activity再次进入运行状态。
  • 当前Activity处于被覆盖状态或者后台不可见状态时,系统内存不足,杀死当前Activity,而后用户退回当前Activity:再次调用onCreate方法、onStart方法、onResume方法,Activity进入运行状态。
  • 用户退出当前Activity时,系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,Activity进入销毁状态。

不管学什么都一样,基础是很重要的,所以对于基础的学习不能懈怠,要认真学习,才能做的更好!


以上便是Activity生命周期的基础内容,希望对大家有所帮助,本人为初学者,文笔有限,有错漏欢迎提出,谢谢!

原创粉丝点击