基本知识

  • 像素:是屏幕上显示数据的最基本的点,单位为px
  • 分辨率:手机屏幕的像素点数,分辨率为720*1280表示屏幕宽度上有720个像素,高度上有1280个像素
  • 密度:单位(英寸)内的像素数
  • 密度值:与密度对应的值,分实际密度和系统密度。实际密度根据屏幕的实际像素及大小计算得来;系统密度是系统设定的密度值。Android根据系统密度来处理缩放。
  • dp:Android开发使用的长度单位,在密度为160dpi时:1dp=1px
  • sp:Android开发使用的字体单位,在密度为160dpi且系统设置字体大小为正常大小时:1sp=1px
Android分辨率

众所周知,不同厂商不同型号,手机的像素分辨率和屏幕大小不可能相同(即实际密度不同)。正因如此,Android在
处理缩放时依据的是系统固有设定的密度值,而不是实际密度。

Android常用分辨率及其系统密度

图一:

上图列出了Android常用的密度及密度值。“比例1”列出了整倍数情况下兼容所有密度的比值;“比例2”是设计师常用的比值(稍后会说明原因)。

设计

在UI设计当中,设计师不需要为每种密度单独设计,只需要在一种密度下设计好,然后按密度倍数导出切片即可。

设计分辨率

那应该选择在哪种密度下设计UI?不同密度下设计的UI,导出时又有什么不同么?
常用的设计密度参考“图一”中的“比例2”。

  • 因为在密度值为160dpi的情况下,Android缩放时,1dp=1px。

采用“比例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大小的图片。

字体

系统设置正常大小的字体缩放适用同样原理

常用的设计资源分辨率

通常,设计师在设计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...

更多相关文章

  1. 浅学设计模式之观察者模式及在android中的应用
  2. 【Android】字体和图标大小设计规范
  3. Android(安卓)- UI(User Interface)的基本设计
  4. Android游戏设计中的音频控制——音量调整
  5. 今日头条屏幕适配_工具类
  6. Android(安卓)Material Design-Creating Apps with Material Des
  7. Android: density,dp,sp,px
  8. NineOldAnimations 设计解析
  9. Android(安卓)HDecoration项目so库导出和调用

随机推荐

  1. Android ListView使用
  2. Android SDK Manager 更新失败的解决方法
  3. scrollView的fillviewport
  4. android listview 点击事件失效
  5. Android Action Bar
  6. android density
  7. 系出名门 Android源代码
  8. 更改RadioButton的背景
  9. 在android 中使用og4j
  10. Android 侧滑删除功能