iPhoneX 的分辨率:2436 * 1125 || pt: 812 * 375
iPhoneXr的分辨率:1792 * 828 || pt: 896 * 414
iPhoneXs 的分辨率: 2436 * 1125 || pt: 812 * 375
iPhoneXs Max 的分辨率:2688 * 1242 || pt: 896 * 414

iOS 判断 iPhoneXS Max、iPhoneXS、iPhoneXR、iPHoneX宏定义
方法一:

#define isPad ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)//判断iPhone4系列
#define kiPhone4 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPhone5系列
#define kiPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPhone6系列
#define kiPhone6 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(750, 1334), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iphone6+系列
#define kiPhone6Plus ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2208), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPhoneX
#define IS_IPHONE_X ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPHoneXr
#define IS_IPHONE_Xr ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPhoneXs
#define IS_IPHONE_Xs ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)
//判断iPhoneXs Max
#define IS_IPHONE_Xs_Max ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)#define IS_IPhoneX_All ([UIScreen mainScreen].bounds.size.height == 812 || [UIScreen mainScreen].bounds.size.height == 896)//iPhoneX系列
#define Height_StatusBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 44.0 : 20.0)
#define Height_NavBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 88.0 : 64.0)
#define Height_TabBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 83.0 : 49.0)

方法二:

#define SCREEN_HEIGHTL [UIScreen mainScreen].bounds.size.height
#define SCREEN_WIDTHL [UIScreen mainScreen].bounds.size.width
#define SCREEN_MAX_LENGTH (MAX(SCREEN_WIDTH, SCREEN_HEIGHT))
#define SCREEN_MIN_LENGTH (MIN(SCREEN_WIDTH, SCREEN_HEIGHT))
#define IS_IPhoneX_All ((int)((SCREEN_HEIGHTL/SCREEN_WIDTHL)*100) == 216)?YES:NO//状态栏、导航栏、标签栏高度
#define Height_StatusBar [[UIApplication sharedApplication] statusBarFrame].size.height #define Height_NavBar 44.0f#define Height_TopBar (Height_StatusBar + Height_NavBar)#define Height_TapBar (IS_IPhoneX_All ? 83.0f:49.0f)#define Height_BottomSafe (IS_IPhoneX_All? 34.0f:0.0f)

iOS 判断 iPhoneXS Max、iPhoneXS、iPhoneXR、iPhoneX相关推荐

  1. iOS开发:判断iPhone是否是刘海屏iPhoneX、iPhoneXR、iPhoneXs、iPhoneXs Max等

    保证能判断,呕心沥血,不行切JIJI 方法一 Objective-C // iPhoneX.iPhoneXR.iPhoneXs.iPhoneXs Max等 // 判断刘海屏,返回YES表示是刘海屏 - ...

  2. Unity判断机型是否为iPhoneX,iPhoneXS,iPhoneXR,以及iPhoneXS Max

    原生iOS常用的判断方法 iOS中判断机型的方式通常是利用屏幕分辨率,导航栏尺寸,是否支持某些功能特性等进行判断. 例如获取屏幕宽高: CGFloat screenWidth = [UIScreen ...

  3. iOS 判断手机型号(已更新至iPhone 14 Pro Max)

    iOS 判断手机型号(已更新至iPhone 14 Pro Max) 判断手机型号代码如下: #import <sys/utsname.h> #pragma mark -- 判断手机型号 + ...

  4. iOS判断是模拟器还是真机

    [代码]iOS判断是模拟器还是真机 #if TARGET_IPHONE_SIMULATOR//模拟器 #elif TARGET_OS_IPHONE//真机 #endif 转载于:https://www ...

  5. iOS判断是否有权限访问相机,相册,定位

    2019独角兽企业重金招聘Python工程师标准>>> iOS判断是否有权限访问相机,相册,定位 原文地址:判断是否有权限访问相机,相册,定位 1.判断用户是否有权限访问相册 #im ...

  6. ios判断当前设备类型

    ios判断当前设备类型 代码如下: + (NSString*) deviceString { // 需要#import "sys/utsname.h" struct utsname ...

  7. ios 怎么判断字符串的字节数_如何用IOS判断字符串是不是纯数字

    我们在开发项目的时候经常会需要我们只输入一段纯数字,当我们在输入这段数字后就需要对字符串进行判断,看看是不是符合纯数字,那么你知道如何用IOS判断字符串是不是纯数字吗? 下面介绍几种判断字符串是否为纯 ...

  8. IOS 判断设备屏幕尺寸、分辨率 根据屏幕尺寸和分辨率

    IOS 判断设备屏幕尺寸.分辨率 根据屏幕尺寸和分辨率,ios现在数起来有6个版本. iOS 设备现有的分辨率如下: iPhone/iPod Touch 普通屏                     ...

  9. iOS判断是ipad还是iphone

    原文地址:iOS判断是ipad还是iphone 作者:酷云 - (BOOL)application:(UIApplication *)application didFinishLaunchingWit ...

最新文章

  1. 用TLS实现安全TCP传输及配置和访问https的web服务(转)
  2. 3DSlicer18:Layouts
  3. tensor转换为图片_为大家介绍图片转换pdf的经验总结!你找对方法了吗?
  4. 年龄大了学Java是爱好还是转型?
  5. IIS7批量FTP客户端工具软件
  6. 尝试:以下矩阵size length ndims repmat isempty ismatix E=A(:,[1:3:5])什么意思?
  7. 虚拟机Windows 2003忘记密码怎么办
  8. JavaScript:工具库MyTools.js(自用不断填充····)
  9. 火星坐标系解密-iDesktopX空间数据处理
  10. LOAP引擎:clickhouse05: 漏斗函数的应用
  11. 封装60秒倒计时vue组件
  12. 超级好用的Caps Lock大小写锁定提示及使用配置
  13. 前方高能!阿里云双11拼团百团大战已开启!
  14. Linux的memory日志,Linux:日志,cpu,memory,mount,load等系统信息查看
  15. LOD地形渲染技术概述
  16. 奥扬科技IPO被终止注册:年营收8亿 苏伟持有67.5%股权
  17. PHP 5.6.6 上运行 ecshop 2.7.3 不兼容问题整合
  18. CSS样式表引入的三种方式,及优先级顺序
  19. uiautomator2 启动atx
  20. Java异常处理的简单总结+文件操作

热门文章

  1. 重置和重新安装kubernetes中的coreDNS
  2. 极客日报:B站就机房服务器故障道歉;罗永浩否认将启动自动驾驶项目;​亚马逊收购 Facebook 卫星互联网团队
  3. 计算机操作系统 第四章文件系统
  4. 毕业设计-基于协同过滤的美食店铺推荐系统
  5. 合婚算法之用JAVA实现简单级别的神煞合婚法
  6. (八十四):A Hierarchical Network for Abstractive Meeting Summarization with Cross-Domain Pretraining
  7. Towards Unsupervised Text Classification Leveraging Experts and Word Embeddings
  8. 7-16 三天打鱼两天晒网 (15分) 中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?
  9. 数字三角形 数塔问题
  10. 基于人工神经网络的五子棋博弈(Details)