https://material.io/devices/? ? 官方推薦的dp與px對換叠殷。
完全參考文章:http://geek.csdn.net/news/detail/190325
1劲室、屏幕像素密度
·含義:每英寸的像素點數(shù)
·單位:dpi(dots per ich)
假設設備內(nèi)每英寸有 160 個像素祥诽,那么該設備的屏幕像素密度=160dpi
2夺欲、密度無關(guān)像素(dp)
·含義:density-independent pixel嫂伞,叫 dp 或 dip涨岁,與終端上的實際物理像素點無關(guān)仍翰。
·單位:dp憔鬼,可以保證在不同屏幕像素密度的設備上顯示相同的效果
·Android 開發(fā)時用 dp 而不是 px 單位設置圖片大小龟劲,是 Android 特有的單位
場景:假如同樣都是畫一條長度是屏幕一半的線,如果使用 px 作為計量單位轴或,那么在 480x800 分辨率手機上設置應為 240px昌跌;在 320x480 的手機上應設置為 160px,二者設置就不同了照雁;如果使用 dp 為單位蚕愤,在這兩種分辨率下,160dp 都顯示為屏幕一半的長度。
·dp 與 px 的轉(zhuǎn)換
因為 UI 設計師給你的設計圖是以 px 為單位的萍诱,Android 開發(fā)則是使用 dp 作為單位的悬嗓,那么我們需要進行轉(zhuǎn)換:
在 Android 中,規(guī)定以 160dpi(即屏幕分辨率為 320x480)為基準:1dp=1px
3裕坊、UI給工程師切多大圖是合適的
在之前包竹, 設計師的交互和視覺設計都是基于480*800的界面, 切圖的時候會以480*800為基礎切一版籍凝, 然后在給所切圖片的寬和高乘上個4/3周瞎,然后在出一版。
比如同一個120*180的圖片饵蒂, 就會出兩個版本声诸, 一個是120*180的一個是160*240的。分別放到hdpi目錄和xhdpi目錄苹享。
吃到的苦頭是双絮,UI很累, apk很大得问。T^T
這番探究下來囤攀, 發(fā)現(xiàn)直接基于720*1280的視覺稿切一版圖片就可以了。 將圖片只放到xhdpi目錄中宫纬,這樣系統(tǒng)會在不同密度屏幕的手機中對圖片進行合理的縮放焚挠, 而之前這個縮放工作竟然是人工完成的!
另: 如果想在xxhdpi的手機上顯示的很好漓骚, 也可以基于1080P的屏幕設計蝌衔, 這樣的話就兼容所有低密度屏幕的手機, 而且也不會出現(xiàn)圖片被拉扯的現(xiàn)象蝌蹂。