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"
//----------------------------------分割---------------------------------------
小米手机开启横竖屏切换:设置--->显示--->自动旋转屏幕。
genymotion模拟器切换横竖屏快捷键:Ctrl+F11切换横竖屏。
自己的Mi 2s手机,版本为4.1.1,需要在Manifest.xml文件中设置,android:configChanges="orientation|screenSize"
才能切换横竖屏,仅仅设置android:configChanges="orientation"不起作用。
在genymotion模拟器中测试4.4.4和5.0上面仅仅需要设置android:configChanges="orientation|screenSize"就可以
调用onConfigurationChanged就可以了。不需要设置为android:configChanges="orientation|screenSize|layoutDirection"。