iPhone X 的适配

iPhone X 的适配

很久没时间更新博客了,趁着项目最近不是很紧,整理一些开发中遇到的,对大家有用的东西,记录一下. 方便日后回顾;
前几天做了iPhone x的适配, 有些坑,希望对广大开发者有点帮助;
我做了个图:
这里写图片描述

可以看到, 状态栏和导航栏的高度是88了;
tabbar的高度是83了,但是tabbar底下有个圆角,在开发的过程中,需要注意, 写上去的内容会看不到了哦;
然后铺页面的区域就是: 屏幕高度 - 头部高度 - 底部高度;
我的头部和底部的高度都写成了宏, 方便在开发的过程中挨个机型判断了;

首先判断是 iPhoneX, 网上判断机型的方法大家可以自己搜一下,还是挺好找的,比如:http://www.jianshu.com/p/02bba9419df8

因为iPhoneX的屏幕不一样,我就随便用一个屏幕的方法, 我是写在了pch里了

//1.判断是iPhoneX
#define kDevice_Is_iPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)

// 整个屏幕的高度
#define HHMainScreenHeight [UIScreen mainScreen].bounds.size.height
//2.中间显示的区域高度, 中间区域不是这个高度的再做适当的增减就好了
#define JMiddleHeight MainScreenHeight-NavBarHeihgt-TabBarHright

使用的时候;

if(kDevice_Is_iPhoneX) {
// 是 iPhoneX
// 设置 navBar的背景
// 设置 TabBar的背景
} else {
// 不是 iPhoneX
// 设置 navBar的背景
// 设置 TabBar的背景
}

—–重要的—–
到这里就差不多了, 但是运行设备的时候就会发现出大事了,怎么调都不能适配;这是在运行iPhoneX的时候少了一个启动页,必须给iPhoneX配上1125 × 2436的启动页
这里写图片描述

到这里,应该就可以了

如果还有不合适的情况,欢迎探讨 QQ:418210857

猜你喜欢

转载自blog.csdn.net/Jesse0308/article/details/78458038
今日推荐