Android适配的那些P事

声明:本文从设计角度说明设计稿及倍图适配问题,不含前端技术,码农慎入

首先我们看看百度搜索引擎上常见的解释入手:

图1:屏幕分辨率和常见屏幕密度关系

我们知道屏幕密度直接关系到我们所谓的@1X  @1.5X  @2X  @3X  @4X图的对应适配关系,结合图1可知:

① 屏幕密度跟屏幕分辨率可能有关系;

②实操过安卓适配的同学应该了解,并不是所有的生厂商都会做规规矩矩的屏幕分辨率;


单位解释篇


想要通透得了解关于安卓各机型的适配关系还得从常见的单位入手,dp/px/sp/PPI/DPI

dp=dip=density-independence pixel=独立设备像素:可以理解为类似现实中厘米的功能,当成是一个物理单位,1dp=1in/160ppi=2.54cm/160ppi≈0.016cm,使文字和图片在不同屏幕手机中看上去差不多大;

px=pixel=像素:这是我们用Ps、AI出设计稿时的常用单位,在启动Ps的第一时间我们应该都会将首选项中的单位设置为px 不多做介绍;

sp=Scale-independent pixels=尺度独立像素(翻译待考证):是安卓的字体单位,在安卓系统设置中我们可以定义字体大小,以MIUI为例

图2:MIUI7.1字体大小设置界面

在标准模式下(字体是100%)时,1sp=1dp,我们知道iOS HIG里面说过内容样式大尺寸为17pt(iOS中的默认size),以此为参考,安卓中常用的字号为16±dp(安卓可能出现1.5X图 所以取偶数)

PPI=Pixel Per Inch=像素密度;  DPI=Dots Per Inch=点密度;

点原来是印刷上的计量单位;像素是电脑显示器的计量单位;印刷行业规 1点=0.35mm=1/72英寸;针对显示器设计的分辨率为 72像素/英寸;在针对显示器的设计中我们可以认为DPI=PPI

PPI计算篇(前方高能)


新手机发布必备的参数一定会有屏幕分辨率(1920*1080),屏幕尺寸(5.0英寸),有心的同学会去官网查询一下具体的PPI值,这里跟大家解释一下这三者的转换关系,以便大家更好地理解安卓适配:

假设屏幕分辨率为W*H(px),物理尺寸为a*b(inch),

则我们常说的屏幕尺寸c(如5.0英寸)其实是对角线的长度,因此:

公式1:勾股定理

而PPI是像素密度,指的是屏幕单位宽的像素数:

公式2:屏幕密度定义

由此我们推理出:

公式3:由公式2推理

因此我们可以得出一个大百度烂大街的PPI DPI计算公式:

公式4:PPI计算公式

以上一大串的公式其实想说明的是:

①公式4表面意义似乎是-PPI是屏幕分辨率用勾股计算出的对角线像素数/屏幕尺寸;

②事实上,我们知道一个2*2px的屏幕,对角线像素数也是2px,并不符合勾股定律的计算公式;

③正确理解公式的推理过程,才能正确理解屏幕适配原理;

dp与px换算篇


首先引入dp和px的转换公式

px=dp*(ppi/160)

简单陈述一下公式的实际计算方法:

任何一款机型,我们计算或从官方参数得到PPI值后,将PPI/160,得到任何含小数点的值后,舍掉小数,整数进一位就是我们的dp px的转换关系,即1.5X  2X  3X  4X图的适用关系,用函数表达即  ceil(PPI/160);相除得整数则直接可用:

267ppi机型,ceil(1.67)=2  该机型用2X设计稿

423ppi机型,ceil(2.64)=3  该机型用3X设计稿


至此我们知道图1的关系其实还是too young too naive,附上一个较为成熟的关系图:

图3:屏幕密度范围与倍图对应关系


主流手机屏幕尺寸及分辨率


整理了一些主流机型的参数屏幕并附上:

置灰文字说明:未查询到官方数据,为个人计算结果

数据统计包括魅族/小米/华为/三星/HTC/MOTO/VIVO/SONY截止到2016.2的主流机型

图4:主流机型参数及倍图关系整理

由图4可见,在大屏手机时代,3X机型成为了主流机型(暂时忽略机型市场占有率);1X机型基本绝迹;4K手机屏也在悄悄进入市场;

一稿适配篇


有限的时候我们如何出多张不同分辨率的效果图

首先建议以2X图尺寸(1280*720)为设计原稿进行设计(由图4可见,1X适配机型基本已经绝种),然2X只需要设计时注意偶数原则即可方便进行适配;另外设计稿也有可能会被要求直接用于iOS,或iOS设计稿直接改改成了安卓的设计稿(iOS主流还是@2X);假设我们手里有一份1136*640(iPhone5/5s) 原稿高保真设计稿,要去适配iOS其它机型及安卓机型:

因为iOS的尺寸比较有代表性,能说明问题,方法在安卓各机型适配过程中通用:


图5:一稿适配方法

需要注意的是,图标在放大过程中可能会出现锯齿(所谓虚边),防锯齿需要注意的点有很多,其中最主要的一条是 尽量保持图标文件的形状属性(切忌使用位图素材、栅格化图层、转为智能对象)

一点小技巧,在2X→3X过程中,我们可以全选图层,Cmd+T后 讲变形中心移动到画板左上角的位置,再进行150%变形,会便捷很多;


这次的内容就写到这里,请大神随便拍;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容