[Android]Activity生命周期
2015-12-08 21:27
369 查看
Activity身为Android的四大组件之一,其主要性是不言而喻的。当我们看到android手机上的一个个应用页面的时候,它们便是一个个Activity,就连桌面其实也只是一个Activity。因此,学习Activity的生命周期,更能使得我们掌握如何使用Activity。
首先,我们先看看谷歌API中介绍Activity生命周期的图片:
![](https://img-blog.csdn.net/20151208203828388)
其实,这个图片早已包含了Activity的生命周期的各个阶段。下面大概解说一下:
Activity启动状态:
当Activity启动的时候,最先调用onCreate()-->onStrat()-->onResume()这三个一开始的固定执行的,问题不会太大。当执行完onResume()方法后,该Activity才算是真正运行在用户的面前。
Activity运行与暂停状态:
在Activity A运行的时候,若有其它Activity B出现在该Activity A的面前,但是并未遮住当前的Activity A,这时,此Activity A将执行onPause()方法。
当Activity A在onPause()状态的时候,半遮住Activity A的Activity B取消遮住Activity A,此时,Activity A则返回调用onResume()方法。
在Activity A运行的时候,若有其它Activity B出现在该Activity A的面前,但是已经遮住当前的Activity A,这时,此Activity A将顺序执行onPause()-->onStop()方法。(其实,也就是在Activity B在完全遮住Activity A之前是不会完全遮住Activity A的,因此要先执行onPause(),若Activity B已经半遮住Activity A,然后再完全遮住,这时直接执行onStop()方法即可)。
Activity停止状态:
当Activity处于onStop()的状态的时候,若该Activity被关闭或者被系统直接关掉则会执行onDestroy()方法,当执行完onDestroy()后,该Activity则算是完成自己的使命,被关闭了。
当Activity A在onStop()状态的时候,遮住Activity A的Activity B取消遮住Activity A,此时,Activity A则调用onRestart()-->onStart()-->onResume()。
当Activity在onStop()状态时,若当前系统的资源不够,则当前Activity可能被系统回收资源,在这时,若想重新使用该Activity,则需要重新从onCreate()方法那里重新执行。
首先,我们先看看谷歌API中介绍Activity生命周期的图片:
其实,这个图片早已包含了Activity的生命周期的各个阶段。下面大概解说一下:
Activity启动状态:
当Activity启动的时候,最先调用onCreate()-->onStrat()-->onResume()这三个一开始的固定执行的,问题不会太大。当执行完onResume()方法后,该Activity才算是真正运行在用户的面前。
Activity运行与暂停状态:
在Activity A运行的时候,若有其它Activity B出现在该Activity A的面前,但是并未遮住当前的Activity A,这时,此Activity A将执行onPause()方法。
当Activity A在onPause()状态的时候,半遮住Activity A的Activity B取消遮住Activity A,此时,Activity A则返回调用onResume()方法。
在Activity A运行的时候,若有其它Activity B出现在该Activity A的面前,但是已经遮住当前的Activity A,这时,此Activity A将顺序执行onPause()-->onStop()方法。(其实,也就是在Activity B在完全遮住Activity A之前是不会完全遮住Activity A的,因此要先执行onPause(),若Activity B已经半遮住Activity A,然后再完全遮住,这时直接执行onStop()方法即可)。
Activity停止状态:
当Activity处于onStop()的状态的时候,若该Activity被关闭或者被系统直接关掉则会执行onDestroy()方法,当执行完onDestroy()后,该Activity则算是完成自己的使命,被关闭了。
当Activity A在onStop()状态的时候,遮住Activity A的Activity B取消遮住Activity A,此时,Activity A则调用onRestart()-->onStart()-->onResume()。
当Activity在onStop()状态时,若当前系统的资源不够,则当前Activity可能被系统回收资源,在这时,若想重新使用该Activity,则需要重新从onCreate()方法那里重新执行。
相关文章推荐
- Servlet3.1应用生命周期事件 (转载)
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件