麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 系統(tǒng) > Android > 正文

android 判斷橫豎屏問(wèn)題的詳解

2020-04-11 12:08:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

Android橫豎屏要解決的問(wèn)題應(yīng)該就兩個(gè):一。布局問(wèn)題;二。重新載入問(wèn)題。
1.布局問(wèn)題:
如果不想讓軟件在橫豎屏之間切換,最簡(jiǎn)單的辦法就是在項(xiàng)目的 AndroidManifest.xml中找到你所指定的activity中加上android:screenOrientation屬性,他有以下幾個(gè)參數(shù):
"unspecified"
默認(rèn)值 由系統(tǒng)來(lái)判斷顯示方向.判定的策略是和設(shè)備相關(guān)的,所以不同的設(shè)備會(huì)有不同的顯示方向.
"landscape"
橫屏顯示(寬比高要長(zhǎng))
"portrait"
豎屏顯示(高比寬要長(zhǎng))
"user"
用戶(hù)當(dāng)前首選的方向
"behind"
和該Activity下面的那個(gè)Activity的方向一致(在Activity堆棧中的)
"sensor"
有物理的感應(yīng)器來(lái)決定。如果用戶(hù)旋轉(zhuǎn)設(shè)備這屏幕會(huì)橫豎屏切換。
"nosensor"
忽略物理感應(yīng)器,這樣就不會(huì)隨著用戶(hù)旋轉(zhuǎn)設(shè)備而更改了 ( "unspecified"設(shè)置除外 )。
也可以在Java代碼中通過(guò)setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);來(lái)設(shè)置。
如果要讓軟件在橫豎屏之間切換,由于橫豎屏的高寬會(huì)發(fā)生轉(zhuǎn)換,有可能會(huì)要求不同的布局。可以通過(guò)以下方法來(lái)切換布局:

1)在res目錄下建立layout-land和layout-port目錄,相應(yīng)的layout文件不變,比如main.xml。layout-land是橫屏的layout,layout-port是豎屏的layout,其他的不用管,模擬器會(huì)自動(dòng)尋找。

2)通過(guò)this.getResources().getConfiguration().orientation來(lái)判斷當(dāng)前是橫屏還是豎屏然后來(lái)加載相應(yīng)的xml布局文件。因?yàn)楫?dāng)屏幕變?yōu)闄M屏的時(shí)候,系統(tǒng)會(huì)重新呼叫當(dāng)前Activity的OnCreate方法,你可以把以下方法放在你的OnCreate中來(lái)檢查當(dāng)前的方向,然后可以讓你的SetContentView來(lái)載入不同的Layout xml.

復(fù)制代碼 代碼如下:

if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
Log.i("info", "landscape");
}
else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
Log.i("info", "portrait");
}

2.重新載入問(wèn)題。如果不需要從新載入,可以在androidmanifest.xml中加入配置android:configChanges="orientation",配置android:configChanges的作用就是如文檔所說(shuō)的:Specify one or more configuration changes that the activity will handle itself. If not specified, the activity will be restarted if any of these configuration changes happen in the system。這樣在程序中. Activity就不會(huì)重復(fù)的調(diào)用onCreate()甚至不會(huì)調(diào)用onPause.onResume.只會(huì)調(diào)用一個(gè)onConfigurationChanged(Configuration newConfig)。
主站蜘蛛池模板: 久久羞羞| 91精品国产日韩91久久久久久360 | 日韩.www | 精品国产一区二区三区四 | 亚洲精品无码不卡在线播放he | 亚洲婷婷日日综合婷婷噜噜噜 | 毛片免费观看视频 | 黄色大片在线免费看 | 国产精品一区二区免费在线观看 | 精品一区二区在线播放 | 二区三区四区 | 免费一级a毛片免费观看 | 一级网站 | 91久久免费| 91 在线观看| 激情视频导航 | www日韩大片 | 香蕉视频99 | 日本欧美在线播放 | 日本在线不卡一区二区 | 欧美国产永久免费看片 | 日韩视频网址 | 成年人激情在线 | 久久亚洲精选 | 国内精品久久久久久久久久 | 久久久国产视频 | 蜜桃网站在线观看 | 欧美特黄特色视频 | 国产免费一区二区三区网站免费 | 日韩1区 | 九九精品在线观看视频 | 精品一区二区在线播放 | 欧美成人黄色小视频 | 国产亚洲美女精品久久久2020 | av手机在线免费播放 | 久草在线观看首页 | 一本色道久久99精品综合蜜臀 | 成av人在线观看 | 麻豆蜜桃在线观看 | 999精品国产 | 国产 日韩 一区 |