正常情况下,一个Activity在横竖屏切换时,会重复执行onCreate()方法,如果要避免重复执行该方法,只需在配置文件中加一行代码即可:
android:configChanges="orientation|keyboardHidden|screenSize"
完整代码如下:
<activity android:name=".ui.RepairActivity"
android:launchMode="singleTop"
android:configChanges="orientation|keyboardHidden|screenSize"
android:windowSoftInputMode="stateHidden|adjustPan">
</activity>
注意:不能漏掉screenSize,不然还是会重复执行onCreate()。因为从sdk 3.2起,当手机屏幕发现旋转,新增加一个screenSize,这个值也会跟着发生改变。所以需要把screenSize这项也要加入到配置文件中。