最近我们各个项目的iphonex适配已接近尾声,借此来记述过程,已方便查看;
一、物理分辨率为1125px * 2436px.
在ios11之前 状态栏高度:20 ,导航栏的高度:64
iphonex中 状态栏高度:44;
iPhoneX的底部增加了虚拟Homeq区,由于安全区域的原因默认tabBar的高度
由49 -> 83,增高了34。
二、适配中整个项目的宏定义
#define StatusBarTopHeight (kScreenHeight ==812.0?44:20) //状态栏高度
#define BOTTOM_HEIGHT (iPhoneX ?49+34.0f:49) //底部导航
#define iPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125,2436), [[UIScreen mainScreen] currentMode].size) : NO) //判断是不是 iPhone X
//按比例取宽高 750:1334 我们项目UI是iphone6的尺寸;
#define kWidthWithScreenWidth(w) ((w/750)*([UIScreen mainScreen].bounds.size.width))
#define kHeightWithWidthAndScale(w, whScale) ((w)/(whScale))
三、 视频适配
现在项目中的视频比例仍然保持了 16:9;两边是空余的黑边;