博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android点滴(12) -- 1. Android横竖屏切换时,Activity的生命周期的变化(面试题)
阅读量:7281 次
发布时间:2019-06-30

本文共 934 字,大约阅读时间需要 3 分钟。

 

1.       Android横竖屏切换时,Activity的生命周期的变化。

 

Activity的生命周期

完整生命周期(the entire lifetime)

onCreate , onDestroy 在创建和销毁的时候调用。在onCreate中初始化全局资源,在onDestroy中销毁资源。

 

可见生命周期(the visible lifetime)

         onStart , onStop 这是Activity可见,但是未必可交互即未必在最前面。维护着用户可见的资源。

 

前景周期(the foreground lifetime)

         onResume , onPause 此时Activity在最前面,可与用户交互。一个Activity可在ResumePause之间频繁的切换例如设备休眠。因此这两个方法中只有相当轻量级的调用。

 

横竖屏切换时Activity的生命周期的变化与activityconfigChanges的配置有关。

 

1.       configChanges不配置

运行:

初始时TextView显示的内容为“Hello World, LifeCycle!”,点击Button

        

竖屏切换为横屏:

此时TextView的内容重新变为“Hello World, LifeCycle!

横屏切换为竖屏:

2.       配置configChanges

 

<activity android:name=".LifeCycle"

android:configChanges="orientation"

         android:label="@string/app_name">

     ……

</activity>

 

运行,点击Button

竖屏切换为横屏:

没有发生变化

 

横屏切换为竖屏:

                        没有发生变化

 

结论:横竖屏切换时Activity的生命周期与configChanges的配置相关。1.如果不配置,则要先销毁Activity再创建,销毁的过程中会调用onSaveInstanceState,

2.如果配置configChangesOrientation则不销毁

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/cody1988/archive/2011/10/15/2212854.html

你可能感兴趣的文章
Linux mkdir
查看>>
Spark Pipeline
查看>>
Spark FPGrowth (Frequent Pattern Mining)
查看>>
二维vector基本使用
查看>>
节省微博互粉时间,使用全自动"一键关注"Chrome扩展程序
查看>>
iOS Getter 和Setter 注册xibcell
查看>>
安装Python的numpy库
查看>>
Linux系列:Ubuntu虚拟机设置固定IP上网(配置IP、网关、DNS、防止resolv.conf被重写)...
查看>>
一场么有高端起来的改版~
查看>>
UI之UIImageView--属性及用法
查看>>
linux之SQL语句简明教程---COUNT
查看>>
BZOJ 2005 [Noi2010]能量採集 (容斥)
查看>>
Markov Decision Process
查看>>
实验四主存空间的分配和回收
查看>>
macOS清空字体缓存
查看>>
linux中切换用户方式su和su -的区别
查看>>
php面向对象
查看>>
CHIL-SQL-IN 操作符
查看>>
des 加密 iOS
查看>>
XML 对xml文件的crud的增加 create操作 增加元素 增加属性
查看>>