Android适配各分辨率规范,看了就懂了!

 

安卓机型众多,杂乱无章,相比ios平台适配起来更加复杂,ios直接用px单位直接标注切图,而安卓则是dp、sp,下面就来说明一下px、dp、sp之间的转换关系。

Px(像素)是设计工具里最常用的计算单位,也是设计中最基础的单位。

Dp一种基于屏幕密度的抽象单位,px和dp的转换公式:px = dp * (dpi / 160)。从公式可以看出160是基数,当手机dpi为160时,1px=1pd。(从公式可以看出,在dpi确定的情况下,无论分辨率放大缩小dp大小都会等比例缩放,也就是说,不用顾忌安卓手机分辨率,只要根据dpi进行适配即可(这个其实类似于ios的自动布局autolayout))。举个例子:假设dpi=160,400×800的分辨率下1dp=1px,dpi不变的情况下,分辨率变成了800×1280,那么还是等于1dp=1px,dp和px是等比关系。绕了这么多其实只要记住公式px = dp * (dpi / 160)!那dpi怎么确定?

给出了几个参考规范

mdpi160dpi1市场参考(320×480)
hdpi240dpi1.5市场参考(480×800)
xhdpi320dpi2市场参考(720×1280)
xxhdpi480dpi3市场参考(1080×1920)

安卓分辨率众多,只要了解主流的,像魅族之类的奇葩分辨率,让他们自己玩去。具体用多少还是要看个人习惯,因为要适配其他的还是需要放大缩小。我个人推荐使用720×1080分辨率,因为市场来看主流的就只有240dpi、320dpi、480dpi,而320dpi与160dpi是2倍关系,在这种关系下1dp=2px,很容易计算得到。当然了,标注的时候其实也不太需要计算,只要使用ps标注工具就可以。

用320dpi设计的设计稿开始切图,从公式来看,是标准的2倍,所以1dp=2px。(所以切图的时候尽量保持素材是6的倍数。)得到xxhdpi的素材,然后缩小2倍,得到hdpi的素材,最后用hdpi乘于0.75得到xhdpi的素材。

Assistor Ps这款工具是支持安卓各dpi标注的,(之前分享的标注工具:http://www.uizph.com/post-290.html)。

分享到:

发表评论

电子邮件地址不会被公开。 必填项已用*标注