JayceLi  

今天碰到一个奇怪的问题。

onConfigurationChanged未被调用。

根据正常认知,在AndroidManifest.xml中设置android:configChanges="orientation“,

然后在Java代码中重写onConfigurationChanged,即不会重复Activity生命周期,而是调用onConfigurationChanged。

然而今天这种做法没有效果,什么原因呢。

原来,自从Android 3.2(API 13),screen size也开始跟着设备的横竖切换而改变。

所以,在AndroidManifest.xml里设置的MiniSdkVersion和 TargetSdkVersion属性大于等于13的情况下,

如果你想阻止程序在运行时重新加载Activity,除了设置”orientation“,你还必须设置"ScreenSize"。

 

解决方法:

AndroidManifest.xml中设置android:configChanges="orientation|screenSize

4.2又碰到同样的问题了,还得再加上个"layoutDirection"

posted on 2012-10-10 21:01  JayceLi  阅读(5331)  评论(3编辑  收藏  举报