码迷,mamicode.com
首页 > 移动开发 > 详细

android activity的生命周期

时间:2015-04-25 18:19:48      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:

android的activity的生命周期有7个方法,分别是onCreate(),onStart(),onRestart(),onResume(),onPause(),onStop(),onDestory()。

有三个循环:1.完整的循环:从onCreate()一直运行到onDestory()结束。onCreate()—>onStart()—>onResume()—>onPause()—>onStop()—>onDestory()。一路运行到头

                 2.可见的循环:从onStart()运行到onStop()结束。onStart()—>onResume()—>onPause()—>onStop()—>onRestart()—>onStart()。开启新的activity并且完全覆盖老的activity后,通过后退键重新显示老的activity

                 3.可交互的循环:从onResume()运行到onPause()结束。onResume()—>onPause()—>onResume()。开启新的activity不完全覆盖老的activity,通过后退键重新显示老的activity

onCreate():一般在其中进行数据的初始化。

onStart():当调用这个方法时,activity已经可被用户看到,但不一定在最前台。

onResume():当调用这个方法时,activity处于最前台,能与用户进行交互。

onPause():当调用这个方法时,activity处于暂停状态,也就是部分可见。只要有一个新的activity被创建,就一定调用onPause()方法。需要持久保留的数据保存在onPause()方法中

onStop():当调用这个方法时,activity处于停止状态,也就是完全不可见。只要当前的activity完全不可见了,就一定调用onStop()方法。

onDestory():当调用到这个方法是,整个程序都关闭了。

onRestart():这个方法只有在老的activity已经完全不可见时,通过后退键又显示出来时调用。

这些都是在系统内存充足时的调用

横竖屏切换:执行onPause(),onStop(),onDestory(),然后执行onCreate(),onStart(),onRestart(),onResume()。销毁当前的activity,重新创建一个新的activity,横竖屏的切换都是这个流程。

activity之间的切换顺序:Aactivity切换到Bactivity,先执行Aactivity的onPause(),然后执行Bactivity的onCreate(),onStart(),onResume(),最后执行Aactivity的onStop()。Aactivity中比较消耗资源的部分关闭后,再切换到Bactivity中执行onCreate()方法,进行数据初始化,显示Bactivity中的界面。当Bactivity已经执行到onResume()方法时,用户可以进行交互,然后再执行Aactivity中的onStop()方法,这样虽然比较耗时,但是是在后台运行的,对用户的使用没有什么影响。

 

android activity的生命周期

标签:

原文地址:http://www.cnblogs.com/snsdfx/p/4456259.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!