分辨率對(duì)應(yīng)DPI
ldpi QVGA (240×320)
mdpi HVGA (320×480)
hdpi WVGA (480×800),FWVGA (480×854)
xhdpi 720P(1280*720)
xxhdpi 1080p(1920*1080 )
xxxhdpi 4K(3840×2160)
手機(jī)常見分辨率:
4:3
VGA 640*480 (Video Graphics Array)
QVGA 320*240 (Quarter VGA)
HVGA 480*320 (Half-size VGA)
SVGA 800*600 (Super VGA)
5:3
WVGA 800*480 (Wide VGA)
16:9
FWVGA 854*480 (Full Wide VGA)
HD 1920*1080 High Definition
QHD 960*540
720p 1280*720 標(biāo)清
1080p 1920*1080 高清
Android
像素 密度
HVGA mdpi
WVGA hdpi
FWVGA hdpi
720P(1280*720) xhdpi
1080P(1920*1080) xxhdpi
密度 建議尺寸
mipmap-mdpi 48 * 48 1
mipmap-hdpi 72 * 72 1.5
mipmap-xhdpi 96 * 96 2
mipmap-xxhdpi 144 * 144 3
mipmap-xxxhdpi 192 * 192 4
一.基本概念
- dpi:dots per inch 锦募, 說白了就是一英寸有多少個(gè)像素點(diǎn)涕蜂。常見取值 120煌寇,160嫌松,240涕滋。我一般稱作像素密度翎碑,簡(jiǎn)稱密度
- dip:Density independent pixels 敞嗡,設(shè)備獨(dú)立像素 — 這個(gè)和設(shè)備硬件有關(guān)姐叁,一般我們?yōu)榱酥С质謾C(jī)上多種分辨率,如WVGA、HVGA和QVGA,都會(huì)使用dip作為長(zhǎng)度的單位
- dp:與dip完全相同延柠,只是名字不同而已祸挪。在早期的Android版本里多使用dip,后來為了與sp統(tǒng)一就建議使用dp這個(gè)名字了贞间。
- px:屏幕的像素點(diǎn)贿条,簡(jiǎn)稱像素
- sp:與縮放無關(guān)的抽象像素(Scale-independent Pixel)雹仿。sp和dp很類似但唯一的區(qū)別是,Android系統(tǒng)允許用戶自定義文字尺寸大姓浴(小胧辽、正常、大公黑、超大等等)邑商,當(dāng)文字尺寸是“正常”時(shí)1sp=1dp=0.00625英寸凡蚜,而當(dāng)文字尺寸是“大”或“超大”時(shí)人断,1sp>1dp=0.00625英寸。類似我們?cè)趙indows里調(diào)整字體尺寸以后的效果——窗口大小不變朝蜘,只有文字大小改變恶迈。(建議使用sp作為文本的單位,其它用dp
- density:直接翻譯的話貌似叫 密度谱醇。常見取值 1.5 蝉绷, 1.0 。和標(biāo)準(zhǔn)dpi的比例(160px/inc)
- 分辨率 :橫縱兩個(gè)方向像素點(diǎn)的數(shù)量枣抱,例如480x800熔吗,1920x1080
- 屏幕尺寸 :我們生活中經(jīng)常聽到手機(jī)5英寸,4.5英寸佳晶。電腦23.8英寸桅狠。它的結(jié)果是按照屏幕的對(duì)角線計(jì)算出來的,1英寸=2.5400 厘米轿秧,也就是說中跌,5英寸=12.7厘米
- 屏幕比例的問題:因?yàn)橹淮_定了對(duì)角線長(zhǎng),2邊長(zhǎng)度還不一定菇篡。所以有了4:3漩符、16:9這種,這樣就可以算出屏幕邊長(zhǎng)了驱还。
單位互相轉(zhuǎn)換
1.計(jì)算dpi----> 單位英寸下的像素
例如有一臺(tái)手機(jī)嗜暴,屏幕4寸,分辨率480X800议蟆,它的dpi如何算呢闷沥?
因?yàn)椴恢肋呴L(zhǎng),肯定不能分開算咐容,4是對(duì)角線長(zhǎng)度舆逃,那直接用勾股定理算對(duì)角線像素,除以4,算出來大概是 dpi = 233 像素/英寸路狮。
那么density就是 (233 px/inch)/(160 px/inch)=1.46 左右
順便說下虫啥,android默認(rèn)的只有3個(gè)dpi,low奄妨、medium和high涂籽,對(duì)應(yīng) 120、160展蒂、240,如果沒有特別設(shè)置苔咪,所有的dpi都會(huì)被算成這3個(gè)锰悼,其中default的為160.
2. 計(jì)算 dp 與 px
我們寫布局的時(shí)候,肯定還是要知道1個(gè)dp到底有多少px的团赏。
換算公式如下: dp = (DPI/(160像素/英寸))px = density px
注意箕般,這里都是帶單位的。px是單位舔清,dp是單位丝里,density沒單位。
為了方便体谒,假設(shè)dpi是240 像素/英寸 杯聚, 那么density就是1.5
那么就是 dp=1.5px ,注意這是帶了單位的抒痒,也就是 設(shè)備無關(guān)像素 = density 像素 那么轉(zhuǎn)換為數(shù)值計(jì)算的話幌绍,應(yīng)該是下面這個(gè)式子
PX = density * DP