-1

当我使用android:configChanges="orientation". 我想在更改 acreen 方向后防止重新加载活动(xml 参数以上适用于其他应用程序),但这次它失败了。

问题是,我希望我的活动(SherlockActivity)在开始时保持肖像,但在 OnClickListener 事件之后我需要启用它:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);

是否应该运行任何其他方法来防止重新加载?

4

1 回答 1

1

android:configChanges参数应该可以工作(它对我来说完美无缺)。只是盲目猜测 - 如果您的目标是 API 级别 13 或更高,您还必须包括screenSize

注意:从 Android 3.2(API 级别 13)开始,当设备在纵向和横向之间切换时,“屏幕尺寸”也会发生变化。因此,如果您想在为 API 级别 13 或更高级别(由 minSdkVersion 和 targetSdkVersion 属性声明)进行开发时防止由于方向更改而导致运行时重新启动,则除了“orientation”值之外,还必须包含“screenSize”值。也就是说,您必须声明 android:configChanges="orientation|screenSize"。但是,如果您的应用程序以 API 级别 12 或更低级别为目标,那么您的 Activity 始终会自行处理此配置更改(此配置更改不会重新启动您的 Activity,即使在 Android 3.2 或更高版本的设备上运行时也是如此)。

(摘自这里

于 2012-10-24T13:00:30.957 回答