溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android使用最小寬度限定符時(shí)最小寬度的計(jì)算

發(fā)布時(shí)間:2020-07-11 22:51:50 來源:網(wǎng)絡(luò) 閱讀:1128 作者:qingspace 欄目:移動(dòng)開發(fā)

Android開發(fā)中最頭疼的問題之一就是兼容不同尺寸和分辨率的設(shè)備。這里推薦一篇總結(jié)的比較完整的《Android開發(fā):最全面、最易懂的Android屏幕適配解決方案》。這篇文章對(duì)屏幕兼容的許多問題都做了詳述,這里只補(bǔ)充一點(diǎn),就是關(guān)于在使用最小寬度限定符時(shí)這個(gè)最小寬度的該如何計(jì)算。

最小寬度限定符可以使用一個(gè)與屏幕像素密度無關(guān)為單位(dp)的數(shù)值區(qū)分出的不同設(shè)備,以應(yīng)用不同的資源。如下圖中values-sw600dp的sw表示最小寬度,那么600dp是如何確定的呢?

Android使用最小寬度限定符時(shí)最小寬度的計(jì)算

舉個(gè)例子:一般情況下我們可以容易知道設(shè)備的分辨率和尺寸的參數(shù)。比如現(xiàn)在有平板A(分辨率1280*720px,尺寸是8inch),手機(jī)B(分辨率1920*1080px,尺寸是5.7inch),手機(jī)C(分辨率1280*720px,尺寸是5inch)。通過下面的屏幕像素密度的計(jì)算公式,我們可以分別計(jì)算出他們的屏幕像素密度:

Android使用最小寬度限定符時(shí)最小寬度的計(jì)算

 

平板A約為184dpi,手機(jī)B約為386dpi,手機(jī)C約為293dpi。

 

接下里需要注意的是,最小寬度是不考慮橫屏或豎屏的,也就是說最小寬度是設(shè)備屏幕四條邊里最短的那兩條邊。如果需要考慮橫豎屏那么可以加入屏幕方向限定符,這不在我們討論之列。那么接下來我們?nèi)∽疃踢叺南袼財(cái)?shù),并通過下面的公式計(jì)算最小寬度(dp):

平板A約為626dp,手機(jī)B約為448dp,手機(jī)C約為393dp。

Android使用最小寬度限定符時(shí)最小寬度的計(jì)算

 

如上,使用600dp就可以區(qū)分出平板和手機(jī)兩類設(shè)備,如果需要詳細(xì)區(qū)分手機(jī)B和C可以再考慮設(shè)置sw400dp作為區(qū)分。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI