1.各机型分辨率、尺寸、ppi、长宽比例的比较
机型 | 分辨率 | 尺寸 | ppi | 长宽比 |
---|---|---|---|---|
iPhone3GS | 320*480 | 3.5 inch | 165 | 1.5 |
iPhone4/iPhone4s | 640*960 | 3.5 inch | 330 | 1.5 |
iPhone5/iPhone5s | 640*1136 | 4.0 inch | 326 | 1.775 |
iPhone6 | 750*1334 | 4.7 inch | 326 | 1.779 |
iPhone6Plus | 1080*1920 | 5.5 inch | 401 | 1.778 |
2.什么是ppi?ppi如何计算?
ppi英文全称:pixels pre inch
它是描述在水平的和垂直的方向上,每英寸距离的图像包含的像素数目,也叫像素密度。ppi数值越高,显示的密度越高,拟真度就越高,画面的细节就越丰富。乔布斯所说的视网膜屏幕就是指ppi超过300,达到人肉眼无法辨别程度的屏幕。ppi如何计算?
ppi = 像素个数/英寸
以iPhone4为例。iPhone4宽640个像素,高960个像素,由勾股定理可得对角线上有约1154个像素。iPhone4尺寸为3.5英寸,指的是对角线长度为3.5英寸。所以iPhone4的 ppi = 1154 / 3.5 = 330,即iPhone4的ppi约为330。
同理,可计算得iPhone5的ppi为326、iPhone6的ppi为326、iPhone6Plus的ppi为401
3.iPhone6Plus的分辨率问题参见
4.桌面图标、启动图片、Tab bar图片、Tool bar图片、Setting Icons图片的适配参见:
启动图片的规范:
机型 | 分辨率 | 命名 | why |
---|---|---|---|
iPhone4/iPhone4s | 640*960 | Default@2x.png | |
iPhone5/iPhone5s | 640*1136 | Default-568@2x.png | iPhone5高度1136/2=568 |
iPhone6 | 750*1334 | Default-667@2x.png | iPhone6高度1334/2=667 |
iPhone6Plus | 1242*2208 | Default-736@3x.png | iPhone6Plus高度2208/3=736 |
注意:iPhone6Plus的启动图片的尺寸为1242*2208,而不是1080*1920
5.其他UI界面的适配
以下内容摘自: iPhone屏幕尺寸、分辨率及适配
考虑到iPhone机型的多样性,不可能针对iPhone4(s)、5(s)、6、6+四种屏幕尺寸出四套视觉交互稿,也不要基于某一机型从上往下、从左往右给绝对标注,而应该关注subView在superView中的相对位置(EdgeInsets/Frame/Center)以及siblingView之间的偏移(Offset),尽量给出适合Autolayout的相对布局比例(理想情况是只给百分比)。假如交互按照iPhone5(s)下绝对标注,则在iPhone4(s)上可能挤出屏幕底部,而在iPhone6(+)上则可能横向偏左或纵向偏上。
开发人员基于与屏幕边缘的间距(Margin/EdgeInsets),定位边缘处的控件(钉钉子)作为参照,然后基于控件尺寸和间隙进行相对计算排版。这样,若钉子移动,相邻控件将顺向偏移,不会因为局部调整而出现凌乱。
6.过期API的适配
除了对屏幕尺寸和分辨率进行适配之外,还需对iOS SDK中相关的已过期的 API进行适配。典型的如:
1. UITextAlignment->NSTextAlignment
2. sizeWithFont:->boundingRectWithSize:
3. stretchableImageWithLeftCapWidth:topCapHeight:->resizableImageWithCapInsets:
4. …….