获取当前方向并锁定

时间:2014-07-25 11:33:35

标签: java android orientation

我正在尝试获取活动的当前方向并将其锁定为这样,但即使在横向模式下打开它也只是纵向。

//getRequestedOrientation();
setRequestedOrientation( ActivityInfo.SCREEN_ORIENTATION_LOCKED);

由于

2 个答案:

答案 0 :(得分:0)

您屏幕方向已锁定,它将以纵向模式显示您的应用,您应使用屏幕方向传感器。

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_SENSOR);   

编辑。

int str = 0;
    try {
            str = Settings.System.getInt(contexto.getContentResolver(),Settings.System.ACCELEROMETER_ROTATION);
        } catch (SettingNotFoundException e) {          
                e.printStackTrace();
        } 
    if(str!=0) 
    {
        setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_SENSOR);   
    }

同时查看this链接,我认为它可以为您提供帮助。

答案 1 :(得分:0)

这似乎可以解决问题:

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