作用:screenOrientation
用于控制Activity
啟動(dòng)時(shí)方向
相關(guān)值:
值 | 釋義 |
---|---|
unspecified |
默認(rèn)值漠嵌。由系統(tǒng)選擇方向。在不同設(shè)備上珍策,系統(tǒng)使用的政策以及基于政策在特定上下文所做的選擇可能有所差異。 |
behind |
與 Activity 棧中緊接著它的 Activity 的方向相同。 |
landscape |
橫向方向(顯示的寬度大于高度)票堵。 |
portrait |
縱向方向(顯示的高度大于寬度)。 |
sensor |
方向由設(shè)備方向傳感器決定逮栅。顯示方向取決于用戶如何手持設(shè)備悴势,它會(huì)在用戶旋轉(zhuǎn)設(shè)備時(shí)發(fā)生變化。 但一些設(shè)備默認(rèn)情況下不會(huì)旋轉(zhuǎn)到所有四種可能的方向措伐。要允許全部四種方向特纤,請(qǐng)使用 fullSensor 。 |
nosensor |
決定方向時(shí)不考慮物理方向傳感器侥加。傳感器會(huì)被忽略捧存,因此顯示不會(huì)隨用戶對(duì)設(shè)備的移動(dòng)而旋轉(zhuǎn)。 除了這個(gè)區(qū)別,系統(tǒng)在選擇方向時(shí)使用的政策與unspecified 設(shè)置相同昔穴。 |
user |
用戶當(dāng)前的首選方向镰官。 |
fullSensor |
方向由 4 種方向中任一方向的設(shè)備方向傳感器決定。這與 sensor 類似吗货,不同的是它允許所有 4 種可能的屏幕方向泳唠,無(wú)論設(shè)備正常情況下采用什么方向(例如,一些設(shè)備正常情況下不使用反向縱向或反向橫向宙搬,但它支持這些方向)警检。 API 9 中的新增配置。 |
reverseLandscape |
與正常橫向方向相反的橫向方向害淤。API 9 中的新增配置扇雕。 |
reversePortrait |
與正常縱向方向相反的縱向方向窥摄。API 9 中的新增配置镶奉。 |
sensorLandscape |
橫向方向,但根據(jù)設(shè)備傳感器崭放,可以是正成诳粒或反向的橫向方向。API 9 中的新增配置币砂。 |
sensorPortrait |
縱向方向建峭,但根據(jù)設(shè)備傳感器,可以是正尘龃荩或反向的縱向方向亿蒸。API 9 中的新增配置。 |
userLandscape |
橫向方向掌桩,但根據(jù)設(shè)備傳感器和用戶的傳感器首選項(xiàng)边锁,可以是正常或反向的橫向方向波岛。 如果用戶鎖定了基于傳感器的旋轉(zhuǎn)茅坛,其行為與 landscape 相同,否則则拷,其行為與 sensorLandscape 相同贡蓖。API 18 中的新增配置。 |
userPortrait |
縱向方向煌茬,但根據(jù)設(shè)備傳感器和用戶的傳感器首選項(xiàng)斥铺,可以是正常或反向的縱向方向宣旱。 如果用戶鎖定了基于傳感器的旋轉(zhuǎn)仅父,其行為與 portrait 相同,否則浑吟,其行為與 sensorPortrait 相同笙纤。API 18 中的新增配置。 |
fullUser |
如果用戶鎖定了基于傳感器的旋轉(zhuǎn)组力,其行為與 user 相同省容,否則,其行為與 fullSensor 相同燎字,允許所有 4 種可能的屏幕方向腥椒。 API 18 中的新增配置。 |
locked |
將方向鎖定在其當(dāng)前的任意旋轉(zhuǎn)方向候衍。API 18 中的新增配置笼蛛。 |
注意
遇到一個(gè)奇葩的問(wèn)題,我在使用onConfigChanged攔截屏幕的橫豎屏旋轉(zhuǎn)時(shí)蛉鹿,發(fā)現(xiàn)直接進(jìn)行180度的橫屏/豎屏轉(zhuǎn)換居然沒(méi)有反應(yīng)滨砍!查找原因發(fā)現(xiàn)僅對(duì)landscape或者portrait狀態(tài)有用,而同屬于landscape的reverse_landscape并不受影響妖异。那么問(wèn)題怎么破呢惋戏?剛開(kāi)始想到了用Sensor的狀態(tài)來(lái)監(jiān)聽(tīng)當(dāng)前屏幕狀態(tài),可是發(fā)現(xiàn)針對(duì)加速度傳感器或者陀螺儀的參數(shù)來(lái)進(jìn)行判斷太麻煩他膳,這樣效率一點(diǎn)不高响逢,無(wú)意Google中發(fā)現(xiàn)這篇帖子,作者把幾個(gè)問(wèn)題闡述的淋漓盡致棕孙,輪不著我說(shuō)什么了舔亭,于是收藏之。