Android开发之Activity的生命周期(一)

一直想写一点关于Android方面的博客,但是由于工作特别忙,抽不出时间。最后想想,还是要挤出点时间写一点。这样不仅能够巩固自己的知识,说不定也能帮助有需要的人。博客中可能会存在技术错误,如果有还请大家指出,一起交流学习。

首先从Activity的生命周期讲起。

这是一张关于Activity生命周期的图

Android开发之Activity的生命周期(一)_第1张图片


正常情况下Activity会经历如下生命周期:

1.onCreate(),表示Activity的创建。在这个方法中我们可以做一些初始化的工作。比如调用setContentView去加载layout布局资源,初始化Activity所需的数据等。

2.onRestart(),重新启动Activity。一般情况下,当当前的Activity从不可见变为可见的时候,该方法会被调用。这中情况一般是用户按Home健回到桌面或者启动了一个新的Activity,这个时候onPause和onStop方法就会被调用。上面的操作完成后用户如果点击桌面应用的图标或者按back键回到之前的Activity,这时候onRestart就会被调用。

3.onStart(),表示开始启动Activity。这个时候Activity就变味可见了,但是前台还是看不到的,还没有办法和用户进行交互。只有当onResume方法被调用的时候,才会真正的出现在前台。

4.onResume(),表示Activity已经变得可见,可以和用户进行交互了。需要注意的是,虽然onStart和onResume虽然都表示Activity变得可见。但是onStart的时候,Activity还在后台,onResume的时候才真正的出现在前台。

5.onPause(),此时的Activity正准备停止,正常情况下,接着就会调用onStop方法。特殊情况下,如果这个时候用户又回到这个Activity,那么onResume就会被调用。这是一种非常极端的情况,很难重现。onPause中不要做太多耗时的操作,因为会影响新的Activity的展现,onPause必须先执行玩,新的Activity的onResume方法才会被执行。

6.onStop(),表示Activity即将停止。可以做一些稍微重量级的回收工作。同样不能做太多耗时的操作。

7.onDestroy(),这是Activity生命周期中最后一个回调,表示Activity即将被销毁。可以做一些回收工作,释放资源等等。



你可能感兴趣的:(android,Activity)