跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

iPhone屏幕尺寸、分辨率和像素密度,怎么快速搞懂?

大家好,我是陈景序,今天我们来聊聊iPhone的屏幕尺寸、分辨率和像素密度这些技术细节。

首先,得弄清楚几个概念:

  • 尺寸:指的是手机的物理尺寸,包括显示屏和边框。
  • 屏幕尺寸:我们通常说的iPhone5屏幕尺寸为4英寸、iPhone6屏幕尺寸为4.7英寸,是指显示屏对角线的长度。
  • 像素密度:PPI(Pixel Per Inch by diagonal)表示沿着对角线,每英寸所拥有的像素数目。PPI数值越高,分辨率越高,颗粒感越弱。

接下来,我们来看看一些关键步骤:

计算PPI

根据勾股定理,可以得知iPhone4(s)的PPI计算公式为:

sqrt(Width^2 + Height^2) / Diagonal

缩放因子

缩放因子(scale factor between logic point and device pixel)是指逻辑坐标和设备像素之间的比例关系。

  • Scale起源:早期的iPhone3GS的屏幕分辨率是320x480(PPI=163),iOS绘制图形(CGPoint/CGSize/CGRect)均以point为单位。
  • UIScreen.scale:UIScreen.h中定义了该属性,用于将逻辑坐标空间转换为设备坐标空间。
  • UIScreen.nativeScale:iOS8新增了nativeScale属性,表示物理屏幕的原始缩放因子。

机型判别

可以通过scale参数识别是iPhone3GS还是iPhone4(s),通过nativeScale参数可以探测机型是否为iPhone6+。

分辨率和渲染

分辨率和渲染是iPhone屏幕显示效果的关键因素,需要根据不同的机型和分辨率进行适配。

屏幕尺寸适配

从iPhone3GS/iPhone4(s)过渡到iPhone5(s)时,在逻辑上宽度不变高度稍高,之前旧的素材和布局通过AutoresizingFlexible简单适配即可运行得很好。

UI相对布局

考虑到iPhone机型的多样性,不可能针对iPhone4(s)、5(s)、6、6+四种屏幕尺寸出四套视觉交互稿,也不要基于某一机型从上往下、从左往右给绝对标注,而应该关注subView在superView中的相对位置(EdgeInsets/Frame/Center)以及siblingView之间的偏移(Offset),尽量给出适合Autolayout的相对布局比例。

DEPRECATED API适配

最后,除了对屏幕尺寸和分辨率进行适配之外,还需对iOS SDK中相关的DEPRECATED API进行适配。

希望这篇文章能帮助大家更好地理解iPhone的屏幕尺寸、分辨率和像素密度。如果你还有其他问题,欢迎在评论区留言。

我是陈景序,关注「websoft网络软件专家」(www.phpwebsoft.com),了解更多Web开发技术。

相关文章