Android:获取当前的设备方向

Kus*_*hal 9 android screen-orientation device-orientation android-orientation

我将清单集中的活动方向设为肖像.因为我不希望我的屏幕旋转.

但是在单击按钮时,我想在Android中获取当前的设备方向(纵向或横向)?我不需要从传感器不断更新; 当我点击按钮就足够了当前的设备方向.

PS:设备方向是我拿着我的设备的方式.请勿将其与屏幕方向混合使用.

这是我到目前为止做了什么?

 int PORT=1,LAND=2;

 WindowManager windowService = (WindowManager)getSystemService(Context.WINDOW_SERVICE);

 int rotation = windowService.getDefaultDisplay().getRotation();        

    if (Surface.ROTATION_0 == rotation) {
        rotation = PORT;
    } else if(Surface.ROTATION_180 == rotation) {
        rotation = PORT;
    } else if(Surface.ROTATION_90 == rotation) {
        rotation = LAND;
    } else if(Surface.ROTATION_270 == rotation) {
        rotation = LAND;
    }
 return rotation;
Run Code Online (Sandbox Code Playgroud)

即使使用以下方法也无济于事

getResources().getConfiguration().orientation
Run Code Online (Sandbox Code Playgroud)

它始终返回1,因为我的活动默认设置为纵向.

示例/示例代码将受到高度赞赏.

谢谢.

Shi*_*e85 5

用这个 :)

getResources().getConfiguration().orientation
Run Code Online (Sandbox Code Playgroud)