转载自: https://blog.csdn.net/iotjin/article/details/82864907

iOS---iPhoneXs iPhoneXs Max iPhoneXr 界面适配

2018年09月27日 11:36:38 西半球 阅读数:297更多

个人分类: iOS---适配

链接:https://www.jianshu.com/p/8d1d02a21d67

由上图可见 iPhoneXs 的屏幕尺寸和去年的iPhoneX是一样的,所以今年不需要做特殊处理。
主要处理下后面的两款新的尺寸机型:

去年适配的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

导航栏和tabBar的高度是一样的,所以需要在原来判断iPhoneX的基础上增加两种机型.

  1. //判断是否是ipad

  2. #define isPad ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)

  3. //判断iPhone4系列

  4. #define kiPhone4 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  5. //判断iPhone5系列

  6. #define kiPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  7. //判断iPhone6系列

  8. #define kiPhone6 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(750, 1334), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  9. //判断iphone6+系列

  10. #define kiPhone6Plus ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2208), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  11. //判断iPhoneX

  12. #define IS_IPHONE_X ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  13. //判断iPHoneXr

  14. #define IS_IPHONE_Xr ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(828, 1792), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  15. //判断iPhoneXs

  16. #define IS_IPHONE_Xs ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

  17. //判断iPhoneXs Max

  18. #define IS_IPHONE_Xs_Max ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) && !isPad : NO)

navBar和tabBar的判断

  1. //iPhoneX系列

  2. #define Height_StatusBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 44.0 : 20.0)

  3. #define Height_NavBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 88.0 : 64.0)

  4. #define Height_TabBar ((IS_IPHONE_X==YES || IS_IPHONE_Xr ==YES || IS_IPHONE_Xs== YES || IS_IPHONE_Xs_Max== YES) ? 83.0 : 49.0)

iOS---iPhoneXs iPhoneXs Max iPhoneXr相关推荐

  1. iOS 判断 iPhoneXS Max、iPhoneXS、iPhoneXR、iPhoneX

    iPhoneX 的分辨率:2436 * 1125 || pt: 812 * 375 iPhoneXr的分辨率:1792 * 828 || pt: 896 * 414 iPhoneXs 的分辨率: 24 ...

  2. 猫猫分享 iOS 适配iPhoneXS Max,iPhoneXS,iPhoneXR

    怎么适配xsm xr呢, 如果你适配了x那么很简单 如果你用了宏像这样: #define IPHONEX ( ( ([[UIScreen mainScreen] nativeBounds].size. ...

  3. iOS 对iPhone X XS XR XS MAX适配

    勇~敢~的小伙伴儿们,你们好,其实我本来不打算写关于iPhone X的适配的,虽然我已经做好了我们App对于iPhone X的适配,但是真的觉的很鸡肋,可是iPhone X的真机我在前几天感受了一下, ...

  4. iPhone Xs/Xs Max的LTE/WiFi信号差遭众多用户吐槽,英特尔基带的锅?

    雷锋网(公众号:雷锋网)消息,与往年一样新款iPhone发售之后首批使用者总会报告新设备的问题.iPhone Xs/Xs Max开售后的不到48小时,美国科技新闻网站AppleInsider报道称Ve ...

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

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

  6. 如何确定当前的iPhone /设备型号?

    本文翻译自:How to determine the current iPhone/device model? Is there a way to get the device model name ...

  7. html5安卓机判断刘海屏,Android判断是否为刘海屏

    主要总结主流品牌小米.华为.oppo.vivo的刘海屏判断.在某些特殊页面需要适配刘海屏时,可以用以下方法判断. 或者判断屏幕比例是否大于2. /** * 小米刘海屏判断. */ public sta ...

  8. Macbook Pro 2015 更换SSD

    128G的硬盘实在少得可怜,几乎每天都在清理,实在忍无可忍了,终于下定决心更换,趁着春节期间时间充足,说干就干.前期准备工作早在春节前一个月就开始了,感谢前辈们的攻略,让我少走弯路. 一.准备工作: ...

  9. 中国电信eSIM即将支持Apple Watch 为何说苹果与运营商关系尴尬?

    雷锋网消息,苹果在新品发布会的第二天正式推送了iOS 12.1,相比又一次被吐槽高价的新MacBook Air和iPad Pro等新品,iOS 12.1的一个重要更新更实用,除中国大陆以外的iPhon ...

  10. 苹果备份与恢复_苹果恢复数据有哪些可以选择的途径?

    手机是我们日常不可或缺的工具,同时也是记录我们生活点滴的重要道具.今天和大家谈谈如何恢复苹果的数据,尤其是恢复被删除掉的苹果数据. 由于苹果的平台有别于一般,所以在操作起来也需要相当的知识和工具.而一 ...

最新文章

  1. 使用资源文件绘制Win32对话框
  2. Qt学习笔记之文件处理
  3. Guice 1.0 用户指南
  4. php工厂模式和单例模式,php 设计模式之工厂模式、单例模式、注册树模式
  5. json转string工具_不要再重复造轮子了,这款开源工具类库贼好使!
  6. pythonrequests库使用方法_python三方库之requests-快速上手
  7. Dubbo-Zookeeper安装
  8. motion的移植和使用
  9. 高等数学求导公式复习
  10. 蜂鸣器基本介绍及实现程序
  11. 12.学习Camera之——android binder 机制架构
  12. codeblocks编辑代码输入法光标无法跟随解决方案
  13. Thunderbird 邮件签名三个实现方式
  14. Android 打开网络设置界面
  15. 教你解决“邮件”应用不断提示输入密码的方法!
  16. 序列模型第二周作业1:Operations on word vectors
  17. 腾讯免费企业邮箱服务器,如何免费申请腾讯企业邮箱?
  18. GlidedSky爬虫-验证码1
  19. 胡策day 10.26 T2 人、镜子与墙
  20. Mobx-basic(快速上手)莞式教程

热门文章

  1. win10如何在当前目录打开cmd窗口
  2. 计算机毕业设计——简单的网页设计
  3. 虚拟机架设服务器u盘不显示盘符,【图文详解】怎么解决win7虚拟机无法识别U盘问题...
  4. 计算机硬盘吱吱响,电脑硬盘吱吱响怎么回事
  5. 心电监护仪数据图解_心电监护仪数据怎么看
  6. SIMPLE ONLINE AND REALTIME TRACKING
  7. 喜提JDK的BUG一枚!多线程的情况下请谨慎使用这个类的stream遍历。
  8. 去除痘痘祛斑ps教程学习抠图ps婚纱照修图课程入门基础
  9. 电商数据分析常用的四种方法,数据分析必备
  10. shiro 原理简介