关于Activity生命周期的一些总结
来源:互联网 发布:单片机开发板wifi蓝牙 编辑:程序博客网 时间:2024/05/21 17:20
Activity的三种状态以及对应的方法
- 显示状态
- onCreate
- onStart 活动由不可见->可见
- onResume 活动准备好与用户交互时候
- 不可见状态
- onPause 启动或者恢复另一个活动时候调用,通常在该方法释放和保存一些数据。但这个方法的执行速度要快,否则影响到新的栈顶活动的使用
- onStop 活动【完全】不可见时候调用,比如调用对话框这个方法不会执行
- 销毁状态
- onDestroy
活动A启动一个新的活动B所执行的生命周期方法流程
- A:onPause->B:onCreate->B:onStart->B:onResume->A:onStop
- 为什么先执行onPause方法?
- 比如A活动正在播放音频,突然有电话接入,要立刻启动电话接入活动,所以要先把A活动的音频暂停(onPause),才能启动新的活动。
- 所以一般在onPause方法中可以将音频,视频暂停
- 为什么执行完B的3个方法再执行A的onStop方法?
- 因为执行A的onStop方法说明A活动已经不可见了,假如先执行A的onStop方法再创建B活动,万一活动B出现闪退现象,则会出现黑屏现象,用户体验不好。
- 所以这是因为防止新的活动会出现闪退现象而造成黑屏的现象方法。
Activity横竖屏切换问题
- 横竖屏切换的生命周期为:onPause->onStop->onDestroy->onCreate->onStart->onResume
- 为了保持当前Activity的状态,可以调用onSaveInstanceState方法,在该方法中保存一些状态信息,然后调用onCreate方法时候可以将保存的数据读取出来。生命周期为:
- onPause->onSaveInstanceState->onStop->onDestroy->onCreate->onStart->onResume
启动Activity的方式
- 显式启动
- 当Activity的类名已知,可以通过显式启动
- 匿名启动
- 调用系统的Activity,比如浏览器,短信等等
- 比如调用其他的Activity,无法知道类名情况
- 通过Manifest文件,设置activity标签里面中的action和category属性,如下图,其中“xxx”自己设定
- 然后在调用的Activity代码中,写入以下代码即可,xxxx要与上图的xxxx相同:
阅读全文
0 0
- 关于Activity的生命周期的一些总结
- 关于Activity生命周期的一些小总结
- 关于Activity生命周期的一些小总结
- 关于Activity生命周期的一些总结
- 关于Activity的生命周期的一些见解
- 关于Activity生命周期的一些笔记
- 关于android生命周期的一些学习总结
- 关于Activity的生命周期
- 关于Activity的生命周期
- 关于Activity的生命周期
- 关于 Activity的生命周期
- 关于Activity的生命周期
- 关于activity的生命周期
- Activity的生命周期总结
- Activity生命周期的总结
- Android_关于Activity的生命周期及一些理解
- 关于Activity生命周期的管理
- 关于Activity生命周期的分析
- 集合框架复习总结(二)
- 数十种TensorFlow实现案例汇集:代码+笔记
- 高精度乘法
- JMeter 插件 Json Path 解析HTTP响应JSON数据
- Redis源码剖析--整数集合
- 关于Activity生命周期的一些总结
- mysql行级锁|表级锁|页级锁详解
- python中的编码问题
- DataBinding中的include的用法以及include 引起的空指针问题。
- 关于域名解析即DNS的理解,以及hosts文件跟域名解析的关系。tomcat发布的工程,怎么设置一个虚拟域名?
- apache2 proxy 代理设置,白名单与黑名单
- Intel I218 V、Intel I219 V等网卡不能安装window server服务器系统驱动解决方法
- Oracle 相关操作
- JSP九大内置对象(一)