2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > iOS:iPhone XR iPhoneXS iPhone XS Max屏幕适配

iOS:iPhone XR iPhoneXS iPhone XS Max屏幕适配

时间:2023-02-06 08:22:14

相关推荐

iOS:iPhone XR iPhoneXS iPhone XS Max屏幕适配

9月苹果发布了最新款iPhone,分别为iPhone XR、iPhone XS和iPhone XS Max。

各大网站的测评和详细参数都已有很多了,所以本文不在列举这些。

在屏幕适配方面与iPhone X的适配完全一致,大家想了解详细的可以查看这篇文章:

iOS11和iPhone X屏幕适配

iPhone刘海屏设备对比

由上可知:

iPhone X和iPhone XS屏幕大小是一样的,与iPhone 4.7寸屏系列,屏幕宽度一致,只是高度不一样。

iPhone XR和iPhone XS Max屏幕大小是一样的,与iPhone5.5寸屏系列,屏幕宽度一致,只是高度不一样。

并且目前所有的刘海屏的上下安全距离大小是一样的状态栏高度为44,底部高度为34。

根据这些体征,我们完全可以把对iPhone X的屏幕适配修,改为对所有的刘海屏的屏幕适配。利用其高度的特殊性。

修改代码如下:

OC代码

//屏幕宽高#define kScreenW [UIScreen mainScreen].bounds.size.width#define kScreenH [UIScreen mainScreen].bounds.size.height// 刘海屏 宏定义#define iPhoneX ((kScreenH == 812.f || kScreenH == 896.f) ? YES : NO)// 适配刘海屏状态栏高度#define CF_StatusBarHeight (iPhoneX ? 44.f : 20.f)// 适配iPhone X 导航栏高度#define CF_NavHeight (iPhoneX ? 88.f : 64.f)// 适配iPhone X Tabbar距离底部的距离#define CF_TabbarSafeBottomMargin (iPhoneX ? 34.f : 0.f)// 适配iPhone X Tabbar高度#define CF_TabbarHeight (iPhoneX ? (49.f+34.f) : 49.f)

Swift代码

//屏幕宽高public let kScreenW = UIScreen.main.bounds.size.widthpublic let kScreenH = UIScreen.main.bounds.size.height// 刘海屏 宏定义public let iPhoneX = ((kScreenH == 812.0) || (kScreenH == 896.0) ? true : false)// 适配刘海屏状态栏高度public let CF_StatusBarHeight = iPhoneX ? 44.0 : 20.0// 适配iPhone X 导航栏高度public let CF_NavHeight = iPhoneX ? 88.0 : 64.0// 适配iPhone X Tabbar距离底部的距离public let CF_TabbarSafeBottomMargin = iPhoneX ? 34.0 : 0.0// 适配iPhone X Tabbar高度public let CF_TabbarHeight = iPhoneX ? (49.0 + 34.0) : 49.0

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。