牛骨文教育服务平台(让学习变的简单)
博文笔记

iPhone X适配 最简单粗暴的

创建时间:2017-11-08 投稿人: 浏览次数:1951

如果不了解iPhone X屏幕和普通的区别,去看这个链接,懒得扒图
https://developer.apple.com/ios/human-interface-guidelines/overview/iphone-x/

由题意得:

4.7” 375*667
X 375*812

X 是加长版的4.7寸系列的机子


X的状态栏由20变为44
X的底部因为Home键加了一个34的安全区

X的安全区高度为 812 - 44- 34 = 734


适配的思路就是
1.如果你的app现在换了启动图后(换启动图在X上全屏查其他人资料),如果你的app在安全区外有操作控件 **并且影响了正常使用,那就要解决,如果在上部可以往下移动,或者上部整体拉回安全区,下部也是
2.如果系统使用的是自定义Nav,需要在X上将Nav高度设置为88,而不是之前的64

#define IS_IPHONEX      ((int)DEVICE_HEIGHT%812==0)
#define StatusBarHeight (SCREEN_HEIGHT == 812.0 ? 44 : 20)
#define NavBarHeight    44
#define SafeAreaTopHeight (SCREEN_HEIGHT == 812.0 ? 88 : 64)
#define SafeAreaBottomHeight (SCREEN_HEIGHT == 812.0 ? 34 : 0)
#define SafeAreaHeightWithNav SCREEN_HEIGHT - SafeAreaTopHeight - SafeAreaBottomHeight
#define TabBarHeight        49

针对我们的app使用了这些参数,主要其实就是SafeAreaTopHeight和SafeAreaBottomHeight这两个参数,其他方面 ,根据项目具体再适配,我们是比例纯代码

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。