目前为止,iPhone屏幕尺寸已经有四种:
3.5(inch):1/3G/3GS/4/4S
4.0(inch):5/5S/5C
4.7(inch):6
5.5(inch):6Plus
看一下iPhone4~6(+)的屏幕高宽比:
iPhone4(s):分辨率960*640,高宽比1.5 (基本不再适配)
iPhone5(s):分辨率1136*640,高宽比1.775
iPhone6:分辨率1334*750,高宽比1.779
iPhone6+:分辨率1920*1080,高宽比1.778
可粗略认为iPhone5(s)、6(+)的高宽比是一致的(16:9),即可以等比例缩放。因此可以按宽度适配:
fitScreenWidth= width*(SCREEN_WIDTH/320)
这样,共有iPhone3/4/5、6、6+三组宽度,在iPhone6、6+下将按比例横向放大,也就是说我们要适配宽、高、字号大小
因为5(s)6(s) 6(+)高宽比基本上一致,所以在要求不严格的情况下,直接使用下面来进行适配即可。
#define kAdjustLength(x) kScreen_Width*(x)/1080 btnCard.frame = CGRectMake(kAdjustLength(100), kAdjustLength(60), kScreen_Width - kAdjustLength(100) * 2 , kAdjustLength(680) - kAdjustLength(60) * 2);