iPhont X适配

news/2024/10/18 10:25:52/

iphontX若不设置启动图片相当于iPhone8的放大模式(375667) ,若设置了启动图片才是他的实际像素,实际像素点:
5.8英寸屏(1125
2436)
7681024
矢量图的图片倍率 iphontX3倍图
iphone4,iphone5无放大模式。iphone6,7,8的放大模式屏幕像素是:(320
568)。iphone6 plus,7 plus,8 plus的放大模式屏幕像素是:(375667)。iphone XR的放大模式屏幕像素是:(375812),标准模式是:(414*896)。好像iphoneX刚出来时的操作系统没有放大模式,现在应该有放大模式。其它的它后面的手机应该也有放大模式,没有实际统计过。

在LaunchImage文件中增加iPhontX启动图片,增加方式:点击右侧属性工具栏,勾选iOS 8.0 and Later的iPhone的Portrait,就出来一个图片框了你把1125*2436启动图片拖进去,再调试模拟器或真机就可以看到iPhont X的实际也面了。
这里写图片描述
你可以UITabBarController页面系统已经给你适配了底部了。其它页面都出现顶部耳朵后面也算你的页面区了,若有控件就被耳朵挡住,下面的部分是弧面的角,若按钮再最底部,纳闷按钮的角就被截掉了,底部有一部分有一部分保留区,点击是无效了。
通过识别屏幕高度([[UIScreen mainScreen] bounds].size.height)为2436像素来确定他是你的最爱,由于他没有放大模式,所以不用考虑他会变屏幕高度的问题。
既然找到了识别iPhont X方法,可以通过判断出他是iPhont X来特殊处理。
顶部留空44像素,正好从耳朵下边沿14像素处开始布局。注意:为何是44像素,是因为它的顶部弧边角下沿正好距离顶部44像素,也就是圆角半径是44像素。底部留空白44像素来空出感应区。注意:为何是44像素,是因为它的底部弧边角上边沿正好距离底部44像素,也就是圆角半径是44像素。简单吧?不像别的文章瞎逼逼的,适配iPhont X多魔鬼。只是对所有的也看都要处理一遍也确实够X的。真对得起他的名字iPhont X。
这里写图片描述
这里写图片描述
iPhone X的状态栏视图数组结构变化,读取网络状态栏的网络状态时崩溃。找不到foregroundView这个子视图。
这段代码崩溃:

  UIApplication *app = [UIApplication sharedApplication];NSArray *children = [[[app valueForKeyPath:@"statusBar"]valueForKeyPath:@"foregroundView"]subviews];

崩溃信息:

#0 Thread
NSUnknownKeyException
[<UIStatusBar_Modern 0x15f906160> valueForUndefinedKey:]: this class is not key value coding-compliant for the key foregroundView.

这是项目中使用状态栏中图标判断当前网络的具体状态,而 iPhone X手机状态栏和其他版本手机存在差异,状态栏是多嵌套了一层,所以在读取时候需要注意。
修改后的代码如下:

    UIApplication *app = [UIApplication sharedApplication];
//    NSArray *children = [[[app valueForKeyPath:@"statusBar"]valueForKeyPath:@"foregroundView"]subviews];NSArray *children;// 不能用 [[self deviceVersion] isEqualToString:@"iPhone X"] 来判断,因为模拟器不会返回 iPhone Xif ([[app valueForKeyPath:@"_statusBar"] isKindOfClass:NSClassFromString(@"UIStatusBar_Modern")]) {children = [[[[app valueForKeyPath:@"_statusBar"] valueForKeyPath:@"_statusBar"] valueForKeyPath:@"foregroundView"] subviews];}else{children = [[[app valueForKeyPath:@"_statusBar"] valueForKeyPath:@"foregroundView"] subviews];}

咱们请求的json日志如何看到中文呢?使用这个这个网址,粘贴地址翻译一下就好了。

https://www.bejson.com/convert/unicode_chinese/

http://www.ppmy.cn/news/704478.html

相关文章

web缓存—Squid代理服务

目录 一、squid的相关知识 1&#xff09;squid的概念 2&#xff09;squid代理的工作机制 3&#xff09;Squid 代理的类型 4&#xff09;squid代理服务器和SNAT|DNAT的区别 二、Squid 服务的安装和运行 1&#xff09;安装Squid服务 2&#xff09;修改 Squid 的配置文件…

苹果付费app共享公众号_8.11号,IOS苹果App Store 5款付费App限时免费,支持iPhone/iPad...

关于iOS限免应用在分享前,得提醒一下大家: 限免应用具有时效性,随时可能恢复到原价,看到喜欢的应用就抓紧时间下载下载前请仔细核对价格,避免产生不必要的费用限免应用,你们可以在APP Store(苹果应用商店)中自行搜索APP名称下载关注微信公众号“苹果限免应用”,更方便…

ios游戏源码下载网站推荐

在游戏开发的学习或工作中,利用完好的游戏源码可以事半功倍,不仅可以逆向学习开拓思维,也可以大大减少设计周期。 ios游戏源码在哪里找呢?下面整理了几个性价比高一些的网站,推荐给大家 1、爱给网(分类细,质量高,4299个,QQ登录,免费下载) 链接:http://www.aigei…

苹果笔记本适合什么人 中国Mac电脑用户的8个事实

报告由腾讯 ISUX 研究中心收集了全国 7946 名 Mac 电脑用户的问卷整理而成。并且&#xff0c;参考了苹果公司的历年财报&#xff0c;以及百度、StatCounter 等第三方市场统计数据。 你是 iPhone 用户吗&#xff1f;你是 Mac 电脑用户吗&#xff1f; 想必第二个问题回答“是”…

苹果怎么安装未签名的app_苹果签名是什么,怎么使用

苹果签名是什么&#xff0c;怎么使用 ios苹果签名有企业签、超级签名和tf签名 企业签名用的是企发者账号&#xff0c;年费$299。其享证书签名最便宜&#xff0c;200-800元每月&#xff0c;但稳定性最差&#xff0c;什么敏感软件都签&#xff0c;来者不拒&#xff0c;签名数量不…

苹果Arcade订阅常见问题

1.国内怎么开通Arcade订阅? Arcade目前不支持国内用户开通,如果想玩Arcade游戏,现在比较普遍的方法是使用美区账号登录App Store进行订阅,如果大家有兴趣可以自己注册美区账号登录订阅, 2.苹果Arcade对设备有什么要求&#xff1f; 目前 Arcade 订阅只能在系统版本ios13或以上…

商业发掘 - 苹果 IOS 充值代充,充值卡为什么会便宜,以及其中的一些门道

文章目录 商业发掘 - 苹果 IOS 充值代充,充值卡为什么会便宜,以及其中的一些门道1、虚拟卡小额充满2、跨过汇率浮动导致的汇率差3、使用退款政策4、黑卡5、风险商业发掘 - 苹果 IOS 充值代充,充值卡为什么会便宜,以及其中的一些门道 1、虚拟卡小额充满 部分银行,比如中信…

Linux安装yum

Linux安装yum 1. 安装yum2. 更改镜像源3. yum配置 1. 安装yum sudo apt-get install yum2. 更改镜像源 cd /etc/apt/ // 切换到/etc/apt/ 目录下 sudo cp sources.list sources.list.old // 先把源文件复制到sources.list.old&#xff0c;备份 …