这次苹果一口气出了三款新设备,又要迎来了一波适配,首先来看下设备的相关参数:

型号 屏幕尺寸(inch)屏幕对角线(屏幕以外的边宽度不算)1 inch = 2.54cm = 25.4mm   逻辑分辨率(point)(pt)ios开发单位,即point,绝对长度,1pt=1/72英寸。

逻辑分辨率  宽高比

亲测用模拟器测的UIScreen的scale与nativeScale与缩放因子相等 缩放因子(scale factor) point = x*x pixel dpr(设备像素比,1px = (dpr)^2 * 1dp;设备像素比与ppi相关,一般是ppi/160的整数倍)   物理分辨率(像素)(pixel)(px) 渲染分辨率 像素密度沿着对角线,每英寸所拥有的像素数目(PPI)
iPhone3GS 3.5   320 * 480 1.50   @1x 1point = 1pixel 1.0   320 * 480   163
iPhone4/4s 3.5   320 * 480 1.50   @2x 1point = 2*2pixel 2.0 2倍屏/Retina屏 640 * 960   326
iPhone5/5s 4   320 * 568 1.78   @2x 1point = 2*2pixel 2.0   640 * 1136   326
iPhone6/6s 4.7   375 * 667 1.78   @2x 1point = 2*2pixel 2.0   750 * 1334   326
iPhone6Plus/6s Plus 5.5   414 * 736 1.78   @3x 1point = 3*3pixel 2.5 3倍屏/RetinaHD屏 1242 * 2208   401
Iphone X 5.8 四者是圆角所以对角线比左侧值稍小些 375 * 812 2.17 @3x 6.50 1point = 6.5*6.5pixel 2.9   2436 * 1125   458
iphone XS 5.8   375 * 812 2.17 @3x 6.50 1point = 6.5*6.5pixel 2.9   2436 * 1125   458
iphone XR 6.1   414 * 896 2.16 @2x 4.33 1point = 4.33*4.33pixel 2.0   1792 * 828   326
iphone XS MAX 6.5   414 * 896 2.16 @3x 6.49 1point = 6.49*6.49pixel 2.9   2688 * 1242   458
                        决定屏幕清晰度的值-像素密度
                         

先分析下数据:如果做适配,我们主要关注IphoneX以后出的设备的逻辑分辨率可以看出,X与XS的逻辑分辨率一致,而XR与MAX是逻辑分辨率一致;我们再来看,X与XS的高宽比812 / 375 = 2.17,以及XR及MAX的高宽比896 / 414 = 2.18。而我们的工程之前肯定都适配过X了,所以,适配XR与MAX就so easy了,而且这四种设备都是只支持面容ID而不支持TOUchID的,只要把IphoneX的宏定义对IphoneX的判断或上XR与MAX就行了。以前我们工程里的宏定义如下:

#define IS_IPHONEX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)

只要改成:

#define IS_IPHONEX    ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? ((CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size))||(SCREEN_WIDTH == 414 && SCREEN_HEIGHT == 896)) : NO)

即可。

如果你的项目刚创建不就很easy的情况,强烈建议对整个工程的baseVC做处理,即:在baseVC的View上添加一个UIScrollView,在此SCRollVIew上再添加一个view做所有子控制器的父view,这样,即使以后出现其他宽高比的设备,就不用单独做适配了。

还是如果你的项目刚创建不就很easy的情况,建议对cgrectMake结构体做文章,让你的控件的宽和高按你基准设计图和屏幕的宽高比去变化,这也算是一劳永逸的操作。

简单方法适配IphoneXS Iphone XR IphoneXS MAX相关推荐

  1. 苹果xr黑屏转圈圈解决方法_苹果iPhone XR升级iOS 12.3后黑屏转圈圈怎么办?附解决办法...

    北京时间5月14日凌晨,苹果公司正式向iPhone 5S及以上机型推送了iOS 12.3正式版,本次更新包大小约在500MB左右,主要更新内容为支持启用[隔空播放2]的电视,根据更新介绍显示,&quo ...

  2. iOS 【适配iPhone XR/iPhone XS Max】

    启动图 iPhone XR:828px x 1792px iPhone XS Max: 1242px x 2688px LaunchImage中只有iPhone X/iPhone XS 项目中使用La ...

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

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

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

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

  5. 移动端适配iphoneX、iPhone XS、iPhone XS Max、iPhone XR方法

    使用mui框架的底部tab栏打包后在iphoneX.iPhone XS.iPhone XS Max.iPhone XR上展示出现问题,底部会被遮挡大半. 效果如下图: 解决方案:获取屏幕大小来写不同的 ...

  6. iPhone X,iPhone XS,iPhone XR,iPHone XS Max 适配(只说实现,不BB)

    今天凌晨苹果新发布了三款手机,分别是iPhone XS,iPhone XR,iPhone XS Max,其中iPhone XS的屏幕尺寸和iPhone X的是一致的,另外两款都有了新的尺寸,具体尺寸如 ...

  7. iOS【开发适配iPhone XS, iPhone XS Max, iPhone XR】

    官方适配视频: Building Apps for iPhone XS, iPhone XS Max, and iPhone XR. 原视频连接 https://developer.apple.com ...

  8. iOS屏幕适配 支持新手机 iPhone XR iPhone XS 超简单

    随着苹果爸爸发布了 超牛叉的iPhone iPhone X .iPhone XR.iPhone XS .iPhone XS Max.开发者的适配工作要开始了. 停,?. 如果app 适配过 iPhon ...

  9. 超简单 iOS屏幕适配 支持新手机 iPhone XR iPhone XS

    随着苹果爸爸发布了 超牛叉的iPhone iPhone X .iPhone XR.iPhone XS .iPhone XS Max.开发者的适配工作要开始了. 停,?. 如果app 适配过 iPhon ...

最新文章

  1. LVS + Keepalived 双机热备+DR模式
  2. 《敏捷生活练习》打印书籍
  3. 熊猫支持html5么,Steam疯狂周三特惠推荐:你给我看大熊猫,我就给你钱
  4. 除了写代码,程序员还能做哪些副业呢?
  5. python自动化测试学习有用吗_python自动化测试学习-UnitTest/PyUnit的用法介绍
  6. 工程思想——【误差与分辨度】
  7. 禁止用户用手机浏览时上下滑动
  8. ural 1112,LIS
  9. 【机械】如何用SOLIDWORKS进行ArtCam雕刻机排版
  10. springboot对接支付宝支付接口(详细开发步骤总结)
  11. 【简简单单来个spider小案例吧】获取emoji表情包
  12. zabbix通过yum安装,启动报错zabbix-agent.service never wrote its PID file. Failing.
  13. 计算机考研有什么公众号,大学生应该关注的公众号有哪些推荐?
  14. sub eax, _PAGESIZE; decrease by PAGESIZE test dword ptr [eax],eax ; probe page
  15. 2019腾讯区块链白皮书:产业区块链的破局之路
  16. android实现定位打卡,基于Android的移动定位课堂考勤系统设计与实现
  17. CAD中添加A4边框、画箭头、斜线延长、添加特殊符号(矢量标记)
  18. tomcat 日志禁用
  19. iphone快捷指令蚂蚁森林能量_如何快速偷取蚂蚁森林能量?这有一个捷径……
  20. cf-tool 简易使用教程

热门文章

  1. 两圆的外切线与内切线的切点算法
  2. 基于百度地图实现Android定位功能实现(详解+教程)
  3. 一维数组的定义以及使用
  4. 好佳居软装十大品牌 软装这些知识我们要知道
  5. 测试人员只能点点点?深度剖析测试人员如何变得更优秀
  6. Spark on Hive Hive on Spark傻傻分不清?
  7. 算法很没:快速渡河问题
  8. 植物2 IOS 怎么实名认证_植物大战僵尸2未来世界22天困难怎么过关 植物阵容推荐...
  9. 京东实习笔试——站队
  10. pytorch快速上手-使用自动标注软件Openlabeling和yolov5快速完成目标检测