Android中屏幕的方向

Android中屏幕的方向可以在AndroidManifest.xml文件中,通过对screenOrientation属性就行设置。
screenOrientations的七种属性:
1.landscape:横屏(风景照),显示时宽度大于高度;
2.portrait:竖屏(肖像照),显示时高度大于宽度;
3.user:用户当前的首选方向;
4.behind:继承Activity堆栈中当前Activity下面的那个Activity的方向;
5.sensor:由物理感应器决定显示方向,它取决于用户如何持有设备,当设备被旋转时方向会随之变化——在横屏与竖屏之间;
6.nosensor:忽略物理感应器——即显示方向与物理感应器无关,不管用户如何旋转设备显示方向都不会随着改变(“unspecified”设置除外);
7.unspecified:未指定,此为默认值,由Android系统自己选择适当的方向,选择策略视具体设备的配置情况而定,因此不同的设备会有不同的方向选择;
在代码中 可以通过getRequestedOrientation获取屏幕的方向。

private String getOrientation(int orient){
        String name;
        switch (orient){
            case ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE:
                name="landscape";
                break;
            case ActivityInfo.SCREEN_ORIENTATION_PORTRAIT:
                name="portrait";
                break;
            case ActivityInfo.SCREEN_ORIENTATION_SENSOR:
                name="sensor";
                break;
            case ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED:
                name="unspecified";
                break;
            default:
                name= "";
            break;
        }
        return name;
    }

可以通过setRequestedOrientation直接设置屏幕的方向

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

你可能感兴趣的:(android)