我已经发现了一系列与此主题相关的类似问题,我知道解决方法是将“screenSize”附加到android:configChanges属性(如果您感兴趣,请参阅onConfigurationChanged not getting called)。但它对我的情况不起作用。
我的应用程序基于Android 2.2(API级别8)构建,设备安装有2.3(API级别9)。 有线索吗?提前谢谢。
附上了相关的Manifest.xml片段:
<application android:icon="@drawable/icon" android:label="@string/app_name"
android:debuggable="true">
<activity android:name="com.erlinyou.Erlinyou"
android:label="@string/app_name"
android:configChanges="orientation">
android:launchMode="singleInstance">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
答案 0 :(得分:0)
* onConfigurationChanged *
onConfigurationChanged方法..仅高于3.2 api
答案 1 :(得分:0)
这取决于您 targetSdkVersion 的设置。请参阅以下来自Google的说明。这意味着:
对于targetSdkVersion 低于13(HONEYCOMB_MR2),为您的活动设置 android:configChanges =“orientation” 。
对于targetSdkVersion 是或更高13(HONEYCOMB_MR2),为您的活动设置 android:configChanges =“orientation | screenSize” 。
http://developer.android.com/reference/android/R.attr.html#configChanges screenSize当前可用的屏幕大小已更改。如果应用程序至少不以HONEYCOMB_MR2为目标,则活动将始终自行处理(更改不会导致重新启动)。这表示当前可用大小的更改,因此当用户在横向和纵向之间切换时会发生更改。
希望它适合你。