现在的位置: 首页 > 综合 > 正文

Activity 生存周期

2012年07月12日 ⁄ 综合 ⁄ 共 999字 ⁄ 字号 评论关闭
方法 描述 可被杀死? 下一步
onCreate() 当Activity第一次启动时被创建. 这里应该放置你的一些静态设置,诸如创建View、向list绑定数据等等的一些初始化工作。 这个方法可以通过一个Bundle对象来恢复此Activity之前的状态。

下一个生命状态是 onStart().

onStart()
     onRestart() 在activity已停止活动,再次启动前调用。

下一个生命状态是 onStart()

onStart()
onStart() 在activity被用户可见之前调用。

如果acitivity在前台,也就是被用户可见, 那么下一个生命状态是 onResume() 。如果activity变为隐藏或不可见,则下一个生命状态是 onStop() 。

onResume() 

onStop()
     onResume() activity与用户交互之前会被调用。 这时候activity处于栈顶。

下一个生命状态是 onPause().

onPause()
onPause() 当系统即将开始恢复另一个Acitivity时被调用。这个方法通常被用来存储一些状态,播放activity的停止动画以及其他一些可能会消耗cpu资源的事情。 这个方法的运行时间不宜过长,因为直到这个方法结束,下一个activity才会被调用。 

如果activity恢复到前台,那么下一步就是 onResume()    如果activity变为不可见的,下一步就是 onStop() 

onResume() 

onStop()
onStop() 如果activity不再被用户可见,就进入这一状态。这有可能发生在onDestroy()之前,或者另一个activity被回复并完全覆盖了当前activity。

如果activity又要与用户产生交互,下一个生命状态是 onRestart()    反之 onDestroy() 

onRestart()

onDestroy()
onDestroy() 在activity销毁之前调用。如果显式调用 finish() 方法,也会进入这种状态。

一个acitivty设计到状态保存的也就这两种情况,第一个是不需要开发者主动保存状态(左),因为它就没有被销毁,另一种就需要主动保存状态了,它已经被销毁(右)。

在guide中也说得很明白 只要android:id设置了,框架会帮你存储一些数据并恢复的。

抱歉!评论已关闭.