您的位置:首页 > 移动开发 > Android开发

android 4.0以上横竖屏切换不销毁activity,不重新走生命周期,只调用onConfigurationChanged

2017-08-08 20:23 567 查看
原文地址是:http://dzc.iteye.com/blog/2090512

网上很多文章都是说

在 AndroidManifest.xml 文件中的设置 Activity 元素的

android:configChanges="orientation|keyboardHidden"时,

切屏不会重新调用各个生命周期,只会执行 onConfigurationChanged 方法

本人用的是4.4的版本,发现设置了之后没有用,切换横竖屏照样会调用onCreate方法

然后上官网看了下api,发现当你的版本高于13的时候,设置orientation的同时要设置screenSize

 

http://developer.android.com/guide/topics/manifest/activity-element.html
"
orientation
"
The screen orientation has changed — the user has rotated the device.

Note: If your application targets API level 13 or higher (as declared by the 
minSdkVersion
 and 
targetSdkVersion
 attributes),
then you should also declare the 
"screenSize"
 configuration, because it also changes when a device switches between portrait and landscape orientations.
"
screenSize
"
The current available screen size has changed. This represents a change in the currently available size, relative to the current aspect ratio, so will change when the user switches between landscape and portrait. However, if your application targets API level
12 or lower, then your activity always handles this configuration change itself (this configuration change does not restart your activity, even when running on an Android 3.2 or higher device).

Added in API level 13.
 

所以,我们在配置里加上这个android:configChanges="orientation|screenSize" 这样,切换横竖屏的时候就只会调用onConfigurationChanged方法了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐