首页 > 代码库 > onConfigurationChanged的使用

onConfigurationChanged的使用

在Android中,某些事件触发,Activity会重新调用onCreate方法对Activity重新初始化,这样不仅效率低,而且会造成数据丢失,通过重写onConfigurationChanged方法,并在AndroidManifest.xml中对Activity声明configChanges,这样特定事件触发就会调用onConfigurationChanged方法,而不是onCreate方法重新初始化。

要使用该方法则必须在清单文件中添加如下配置:

android:configChanges="orientation|keyboard|keyboardHidden"

这句代码表示,当设备旋转、显示键盘、隐藏键盘时调用Activity的onConfigurationChanged方法。configChanges可配置的值如下表所示:

image

在做转屏实验的时候会发现现象不是按照上面所述的调用onConfigurationChanged方法而是一直调用onCreate,通过查找网上资料发现,当是在AndroidManifest.xml里设置的MiniSdkVersion和 TargetSdkVersion属性大于等于13的情况下,除了设置”orientation“,你还必须设置"ScreenSize"。

 

参考资料:

http://www.cnblogs.com/jayceli/archive/2012/10/10/2718984.html

http://www.2cto.com/kf/201401/276043.html

http://www.cnblogs.com/lijunamneg/archive/2013/03/26/2982461.html

onConfigurationChanged的使用