系统强制横屏、竖屏

Activity横竖屏

修改属性android:screenOrientation即可

属性有下述可选值:
1. unspecified:默认值 由系统来判断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示方向
2. landscape:横屏显示
3. portrait:竖屏显示
4. user:用户当前首选的方向
5. behind:和该Activity下面的那个Activity的方向一致
6. sensor:由物理的感应器来决定,如果用户旋转设备这屏幕会横竖屏切换
7. nosensor:忽略物理感应器,这样就不会随着用户旋转设备而更改了(“unspecified”设置除外)


系统强制横屏

修改源码WindowManagerService.java。
路径:/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java

在getOrientationFromAppTokensLocked()方法中增加if (true) return ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;即可使所有app强制横屏。

系统强制横屏、竖屏_第1张图片


系统强制竖屏

强制系统竖屏也很简单,只需将上面的返回值改成SCREEN_ORIENTATION_PORTRAIT即可。


你可能感兴趣的:(Android)