- 像素:是屏幕上显示数据的最基本的点,单位为px
- 分辨率:手机屏幕的像素点数,分辨率为720*1280表示屏幕宽度上有720个像素,高度上有1280个像素
- 密度:单位(英寸)内的像素数
- 密度值:与密度对应的值,分实际密度和系统密度。实际密度根据屏幕的实际像素及大小计算得来;系统密度是系统设定的密度值。Android根据系统密度来处理缩放。
- dp:Android开发使用的长度单位,在密度为160dpi时:1dp=1px
- sp:Android开发使用的字体单位,在密度为160dpi且系统设置字体大小为正常大小时:1sp=1px
众所周知,不一样厂商不一样型号,手机的像素分辨率和屏幕大小不可能相同(即实际密度不一样)。正因如此,Android在
处理缩放时依据的是系统固有设定的密度值,而不是实际密度。android
图一:
上图列出了Android经常使用的密度及密度值。“比例1”列出了整倍数状况下兼容全部密度的比值;“比例2”是设计师经常使用的比值(稍后会说明缘由)。git
在UI设计当中,设计师不须要为每种密度单独设计,只须要在一种密度下设计好,而后按密度倍数导出切片便可。github
那应该选择在哪一种密度下设计UI?不一样密度下设计的UI,导出时又有什么不一样么?
经常使用的设计密度参考“图一”中的“比例2”。svg
由于在密度值为160dpi的状况下,Android缩放时,1dp=1px。oop
采用“比例2”来设计UI,能完美实如今导出160、320和480密度时,能以整数倍导出。
对“图一”稍做精简并加上px与dp关系,获得:
图二:字体
上图说明在在dp相同时,px按密度比值倍数变化——这即是Android将dp缩放为px的原理,也是咱们设计的原理。网站
也就是说,设计师在设计一个 1x1px大小的图片,并导出用于 1x(1x1px)、2x(2x2px)、3x(3x3px) 三种密度的图片时。
密度为160dpi、320dpi和480dpi的屏幕会分别显示出 1x1px、2x2px和3x3px大小的图片。spa
系统设置正常大小的字体缩放适用一样原理.net
一般,设计师在设计Android资源时,资源大小为360x640px,而后设计导出 1x、2x和3x的 切图。设计
PS_2017-10-30:新版Android开发中已支持SVG转Vector,因此在导出时只须要导出SVG而后转换为Android Vector XML便可。
在部分开发状况下,任不可避免使用到图片,因此须要根据状况做适当调整。
SVG转AndroidVectorXML
[1]. http://blog.csdn.net/megatron...
[2]. http://inloop.github.io/svg2a... (其余有些会有错误,此网站成功率高,有时候颜色会变成URL,本身修改下就能够)
[3]. http://www.jianshu.com/p/af62...