android:screenOrientation的說明 固定屏幕顯示方向


Activity在屏幕當中顯示的方向。屬性值可以是下表中列出的一個值:

"unspecified" 默認值,由系統來選擇方向。它的使用策略,以及由於選擇時特定的上下文環境,可能會因為設備的差異而不同。
"user" 使用用戶當前首選的方向。
"behind" 使用Activity堆棧中與該Activity之下的那個Activity的相同的方向。
"landscape" 橫向顯示(寬度比高度要大)
"portrait" 縱向顯示(高度比寬度要大)
"reverseLandscape" 與正常的橫向方向相反顯示,在API Level 9中被引入。
"reversePortrait" 與正常的縱向方向相反顯示,在API Level 9中被引入。
"sensorLandscape" 橫向顯示,但是基於設備傳感器,既可以是按正常方向顯示,也可以反向顯示,在API Level 9中被引入。
"sensorPortrait" 縱向顯示,但是基於設備傳感器,既可以是按正常方向顯示,也可以反向顯示,在API Level 9中被引入。
"sensor" 顯示的方向是由設備的方向傳感器來決定的。顯示方向依賴與用戶怎樣持有設備;當用戶旋轉設備時,顯示的方向會改變。但是,默認情況下,有些設備不會在所有的四個方向上都旋轉,因此要允許在所有的四個方向上都能旋轉,就要使用fullSensor屬性值。
"fullSensor" 顯示的方向(4個方向)是由設備的方向傳感器來決定的,除了它允許屏幕有4個顯示方向之外,其他與設置為“sensor”時情況類似,不管什么樣的設備,通常都會這么做。例如,某些設備通常不使用縱向倒轉或橫向反轉,但是使用這個設置,還是會發生這樣的反轉。這個值在API Level 9中引入。
"nosensor" 屏幕的顯示方向不會參照物理方向傳感器。傳感器會被忽略,所以顯示不會因用戶移動設備而旋轉。除了這個差別之外,系統會使用與“unspecified”設置相同的策略來旋轉屏幕的方向。

注意:在給這個屬性設置的值是“landscape”或portrait的時候,要考慮硬件對Activity運行的方向要求。正因如此,這些聲明的值能夠被諸如Google Play這樣的服務所過濾,以便應用程序只能適用於那些支持Activity所要求的方向的設備。例如,如果聲明了“landscape”、“reverseLandscape”、或“sensorLandscape”,那么應用程序就只能適用於那些支持橫向顯示的設備。但是,還應該使用<uses-feature>元素來明確的聲明應用程序所有的屏幕方向是縱向的還是橫行的。例如:<uses-feature android:name=”android.hardware.screen.portrait”/>。這個設置由Google Play提供的純粹的過濾行為,並且在設備僅支持某個特定的方向時,平台本身並不控制應用程序是否能夠被按照。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM