android:configChanges属性
2016-03-18 01:52
239 查看
转自:http://jingyan.baidu.com/article/2fb0ba4056b25700f2ec5faf.html
对android:configChanges属性,一般认为有以下几点:
1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次
2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次
3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法
但是,自从Android 3.2(API 13),在设置Activity的android:configChanges="orientation|keyboardHidden"后,还是一样 会重新调用各个生命周期的。因为screen size也开始跟着设备的横竖切换而改变。所以,在AndroidManifest.xml里设置的MiniSdkVersion和 TargetSdkVersion属性大于等于13的情况下,如果你想阻止程序在运行时重新加载Activity,除了设置"orientation", 你还必须设置"ScreenSize"。
解决方法:
AndroidManifest.xml中设置android:configChanges="orientation|screenSize“
对android:configChanges属性,一般认为有以下几点:
1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次
2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次
3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法
但是,自从Android 3.2(API 13),在设置Activity的android:configChanges="orientation|keyboardHidden"后,还是一样 会重新调用各个生命周期的。因为screen size也开始跟着设备的横竖切换而改变。所以,在AndroidManifest.xml里设置的MiniSdkVersion和 TargetSdkVersion属性大于等于13的情况下,如果你想阻止程序在运行时重新加载Activity,除了设置"orientation", 你还必须设置"ScreenSize"。
解决方法:
AndroidManifest.xml中设置android:configChanges="orientation|screenSize“
相关文章推荐
- android_广播者_监听短信
- Android 之 应用程序和Activity
- android_广播接受者_监听开机启动和IP拨号
- android 显示通知关闭之后,Toast不显示的状态检测
- Android SystemClock类
- Android动画--属性动画总结(一)
- AndroidStudio怎样导入jar包
- android 拦截事件
- Android 编程下 Touch 事件的分发和消费机制
- Android 自定义缩放球以及水纹效果
- Android开发-对于PendingIntent的简单理解
- android_广播接收者概念_监听SD卡入门案例
- Android界面实现
- android山寨卫士开发笔记-002
- android中根据资源文件的名称获得资源文件的Id
- 【VLC-Android】vlc-android简例
- Android提取系统所有的缩略图
- Android 回调机制简述
- Android中的canvas介绍
- Android SDK Manager国内不能下载和下载缓慢的问题