天天看點

系統強制橫屏、豎屏Activity橫豎屏系統強制橫屏系統強制豎屏

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強制橫屏。

系統強制橫屏、豎屏Activity橫豎屏系統強制橫屏系統強制豎屏

系統強制豎屏

強制系統豎屏也很簡單,隻需将上面的傳回值改成SCREEN_ORIENTATION_PORTRAIT即可。