由上图可见 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的基础上增加两种机型.

//判断是否是ipad
#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)

navBar和tabBar的判断

//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)

适配 iPhoneXs iPhoneXs Max iPhoneXr 界面相关推荐

  1. 支持Xcode10和适配iPhone XS Max、iPhone XR的方法

    这篇文章主要介绍了支持Xcode10和适配iPhone XS Max.iPhone XR的方法,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着 ...

  2. 第一章 3ds Max基础界面和操作

    文章目录 目录 文章目录 一.前言 1. Autodesk 3ds Max简介 2. 3d Max中文版启动 二.认识3ds Max界面 1. 3ds Max主界面 2. 视图的认识与切换 3. 视图 ...

  3. android 弹出菜单 toast,Android学习第二天:Toast(提醒)、Menu(菜单)、Intent的显式和隐式(包括打开、适配网站,调用拨号界面等)...

    1.Toast提醒 为昨天写的按钮程序添加一个提醒,在MainActivity中添加如下代码: Button bt1 = (Button) findViewById(R.id.button_1); b ...

  4. ui设计移动端字体适配_移动端UI界面设计:APP字体排版设计的七个原则

    再来谈移动端APP字体排版设计,也许有人会说,这个还有什么好说的呢?但是真正能够运用好APP字体设计的人还真的不多.不信,我们往下看看这个7个移动端字体设计原则吧! 1. 留足空间 与普遍观点恰好相反 ...

  5. 简单方法适配IphoneXS Iphone XR IphoneXS MAX

    这次苹果一口气出了三款新设备,又要迎来了一波适配,首先来看下设备的相关参数: 型号 屏幕尺寸(inch)屏幕对角线(屏幕以外的边宽度不算)1 inch = 2.54cm = 25.4mm   逻辑分辨 ...

  6. iPhone 6/6Plus UI界面设计和适配尺寸规范

    iPhone 6/6Plus UI界面设计和适配尺寸规范 发布于: 2014 年 12 月 10 日 by admin 对于iPhone 6/6Plus UI界面设计和适配尺寸规范的相关教程和知识点, ...

  7. android ui布局适配,Android设备的界面适配设计

    Android设备App设计中有一个问题可能会被设计师忽略,在各种分辨率各种尺寸"杂屏"的界面适配.可能产出的界面稿在常用的720*1280的分辨率中是完美,但一到各个不同分辨率不 ...

  8. iOS-12 iPhone XS Max 和iPhone XR新屏幕简单适配方式

    在新的机器发布之后,我们需要对更大的刘海屏幕做适配,以下是需要新适配的机型: 型号 逻辑尺寸 系数 分辨率 iPhone XR 414pt * 896pt @2 828px * 1792px iPho ...

  9. 超全面!UI设计师如何适配2018新款iPhone

    北京时间9月13日凌晨1点,苹果在美国加利福尼亚州的Apple Park园区召开了2018年苹果秋季新品发布会. 很多人对这次科技界的春晚充满了期待,除了那些让人"剁手"的新品,设 ...

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

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

最新文章

  1. 一次打流过程的优化反思(iperf3的灵活运用)
  2. vant 1.6.6 发布,轻量级移动端 Vue 组件库
  3. 【SQL】数据库的SQL查询,涉及多个数据库
  4. VS2008生成DLL文件的方法、引用dll文件以及意义
  5. Nmap中文手册浅析
  6. linux内核设计与实现---进程管理
  7. linux用户权限简介,Linux用户及权限管理
  8. python图形界面库哪个好_8个必备的Python GUI库
  9. ASP.NET--窗体实现淡入淡出效果
  10. 使DIV水平和垂直居中
  11. 嘿嘿。今天学习了AJAX的几个方法
  12. Redis安装及Java客户端的使用浅析(jedis)
  13. Laya 打包微信 处理分包 fnt字体加载问题 版本管理的报错
  14. i5 9400f和i7 7700k哪个好
  15. 如何将google切片发布成arcgis服务并生成tpk包
  16. 关于SoUI界面库处理从WM_LBUTTONUP到按钮事件的消息路由过程分析
  17. A-B(字符串问题)
  18. C# 操作Word页眉页脚——奇偶页/首页不同、不连续设置页码、复制页眉页脚、锁定页眉页脚、删除页眉...
  19. 【医学信息学】研究和统计——队列研究和数据分析
  20. 使用qq邮箱进行服务器邮件代发

热门文章

  1. JS正则:按中英文逗号 中英文分号 回车 空格分隔/切割字符串
  2. 华硕笔记本返厂维修流程_笔记本不能更换显卡为何又叫独立显卡?
  3. w7查看计算机每天开关机时间,WINDOWS7 怎么查看上次开关机时间
  4. PS全套抠图技法教程,快速抠头发/抠婚纱,带配套素材
  5. c语言程序设计mooc作业平台答案,C语言程序设计下mooc答案.docx
  6. USB大容量存储设备无法启动--这个设备(服务)的驱动程序已被禁用。另一个驱动程序可以提供这个功能。 (代码 32)
  7. 美图秀秀怎么无缝拼图
  8. Cors跨域(三):Access-Control-Allow-Origin多域名?
  9. 管理欲望:领导者的自我觉察与突破
  10. word文件做一半未响应_Word经常出现未响应怎么办?