Android 固定橫豎屏
xml檔案中設定:
要實作這個目的,隻需要在AndroidManifest.xml裡聲明Activity的時候加上一個屬性:android:screenOrientation="",
屬性取值landscape為固定橫屏、portrait為固定豎屏。
代碼設定為:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);); //強制為橫屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); //豎屏
============延伸===========
螢幕會自動切換時,預設狀态的應用程式,會重新調用onCreate,相當于重新啟動了一次應用程式。同時,layout可能因為橫屏帶來不能合理适配的問題。為了解決旋屏和鍵盤切換引起的程式重新開機問題,還需要增加一個屬性:android:configChanges。這個屬性可以了解為一個監聽器,它将攔截旋屏和鍵盤切換事件,阻止程式重新開機而變為回調onConfigurationChanged方法。這裡常用的屬性取值為:keyboardHidden|orientation。
即 android:configChanges="screenSize| keyboardHidden|orientation" android:screenOrientation=" sensor" //sensor:旋屏,可切換橫豎屏
android:screenOrientation
活動的方向顯示在裝置上。
的值可以是任何一個字元串:
” ” | 預設值。 系統選擇取向。 的政策 使用,是以選擇在特定情況下,可能有所不同 從裝置到裝置。 |
” ” | 使用者目前的擇優取向。 |
” ” | 相同的方向活動,馬上下了 活動堆棧。 |
” ” | 橫向(顯示是更廣泛的比高)。 橫屏 |
” ” | 肖像取向(顯示高度大于寬度)。 豎屏 |
” ” | 橫向相反的方向從正常的景觀。添加在API級别9。 |
” ” | 肖像方向相反的方向從正常的肖像。添加在API級别9。 |
” ” | 橫向,但可以是基于裝置正常或反向景觀 傳感器。添加在API級别9。 |
” ” | 肖像方位,但是可以根據裝置正常或反向肖像 傳感器。添加在API級别9。 |
” ” | 方向是由裝置方向傳感器。 的方向 顯示取決于使用者持有裝置;當使用者旋轉變化 裝置。 不過,一些裝置不會旋轉四個可能的方向,預設情況下。 來 允許所有四個方向,使用 。 |
” ” | 方向是由裝置定位傳感器的4個方向。 這類似于 除了這允許任何可能的4的螢幕方向, 無論裝置通常會做什麼(例如,一些裝置不能正常使用反向 肖像或逆轉景觀,但這使得這些)。添加在API級别9。 |
” ” | 方向決定不考慮實體方向傳感器。 傳感器 被忽略,是以顯示不會旋轉根據使用者移動裝置。 除了這個 差別,系統選擇使用相同的政策取向的“ ”設定。 |