安卓Activity的生命周期函数详解
来源:互联网 发布:网络教育统考好不好考 编辑:程序博客网 时间:2024/05/16 04:17
首先上个官图:
http://developer.android.com/reference/android/app/Activity.html
记住核心方法:onStart()、onStop()
onCreate (创建:做一些初始化的工作)
Activity初次创建时被调用
一般在这里创建view,初始化布局信息,将数据邦定到list以及设置监听器等等。如果Activity首次创建,本方法将会调用onStart();如果Activity是停止后重新显示,则将调用 onRestart()
onStart(开始:可见)
当Activity对用户即将可见的时候被调用,其后调用onResume
onResume(恢复:可操作界面)
当用户能在界面中进行操作的时候(获得焦点等)被调用
onPause(中断:该Acitvity中断前的一些操作,即:当前Activity不再是栈顶的状态时候,把相关的事情处理好改activity才能中断)
当系统要启动一个其他的Activity时调用(其他的activity显示之前),这个方法被用来停止动画和其他占用CPU资源的事情。所以在这里应该提交保存那些持久数据,这些数据可以在onResume方法中读出
onStop(停止:不可见,也不可操作界面)
当另外一个Activity恢复并遮盖住当前Activity,导致用户不再可见时调用。一个新Activity启动、其他Activity被切换至前景、当前Activity被销毁时都回调用此函数。如果当Activity重新回到前景与用户交互时会调用onRestart(),如果Activity将退出则调用onDestroy
onDestroy(毁灭:彻底杀掉这个activity)
当前Activity被直接关闭或者系统资源不足时被调用
在当前的Activity被销毁前所调用的最后一个方法,当进程终止时调用
onRestart
当Activity停止后(即调用onStop)重新显示的时候,会被调用,然后调用onStart
自己可以创建两个Activity去测试:
测试流程如下:
一、启动一个新的Activity,就会启动三个函数
* onCreate
* onStart
* onResume
当这个Activity长时间处在栈顶,而手机设备一直没操作而导致锁屏,这时会调用以下函数
* onPause
* onStop
当屏幕解锁后,这个Activity会显示出来,会调用一下函数
onRestart()
onStart()
onResume()
当按下返回键,这个新的Activity就会启动三个函数
* onPause
* onStop
* onDestroy
二、启动另外一个Activity时,原本的Activity会启用onpause函数
另外一个Activity启动以下函数:
* onCreate
* onStart
* onResume
启动成功后,原本的Activity启动onstop函数
三、在另外的那个Activity中,按返回键:
首先,另外的Activity会启动onPause(),
然后,原来的Activity ,启动onRestart()、onStart()、onResume()
最后,另外的Activity会启动onStop()、onDestroy()
- 安卓Activity的生命周期函数详解
- 安卓Activity生命周期详解
- 安卓Activity的生命周期
- 安卓Activity的生命周期
- 安卓Activity的生命周期
- 安卓activity生命周期
- 安卓activity生命周期
- 安卓activity生命周期
- 安卓Activity 生命周期
- 安卓Activity生命周期
- 安卓-Activity生命周期
- 安卓activity生命周期
- 安卓activity生命周期
- 安卓 Activity 生命周期
- 安卓开发02:Activity的生命周期
- 安卓开发02:Activity的生命周期
- 安卓开发:Activity的生命周期
- 安卓开发之Activity的生命周期
- 第3章:Prolog是如何回答问题的
- SolrCloud分布式检索时忽略宕机的Shard
- [Leetcode]Binary Tree Preorder Traversal
- Android万能视频播放器-移植第三方库(vitamio)
- Incomplete reply from server
- 安卓Activity的生命周期函数详解
- android平台下运行dx.bat,提示“系统找不到指定路径”
- android 标题动态变换(listview scrollview 滑动距离计算)
- 第4章:Prolog程序的两种意义
- 百度UEditor组件出现Parameters: Invalid chunk '' ignored警告的分析
- js转换long类型时间
- String,StringBuffer与StringBuilder的区别??
- 【C++】读取整个文本文件的方法
- Play on Words,UVA 10129——求欧拉回路/欧拉通路