0

可能重复:
如何在 Android 中禁用方向更改?

我想在以任何方向(纵向或横向)打开画布后禁用方向更改,但是在横向模式下打开画布并更改设备方向时遇到问题,方向未被禁用。

这是代码。

public void onConfigurationChanged(Configuration newConfig) {

  super.onConfigurationChanged(newConfig);
  this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);

}
4

3 回答 3

6

在你的代码中试试这个......

if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE)
    {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    }
    else
    {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
    }

在 oncreate 中获取方向并为该活动设置该方向

于 2012-11-01T05:20:13.467 回答
3

使用此代码从清单中为您的活动添加固定方向:(将此代码放入活动标签中)

android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden"

这样,您的活动将仅以纵向模式显示

于 2012-11-01T04:56:32.713 回答
1

采用:

<activity android:name="YourActivity" android:configChanges="orientation|keyboardHidden">
于 2012-11-01T04:56:48.763 回答