iOSUI

iPhoneX xib刘海屏 适配导航栏

2018-12-13  本文已影响47人  iOS坚持者

众所周知,苹果从去年开始退出了刘海屏,导致现在市场上一堆的刘海屏幕,不管是Apple还是其他手机厂商的。在这里真是向吐槽一下国产品牌,特别是某两款手机,如果不开机不看 logo 的话很难识别是苹果还是某 po、某 vo 手机。闲话不多说,接下来我们讲讲怎么在 xib 中适配导航栏。

刘海屏推出的同时,iOS 系统也同步更新到了11.0,这个版本改动还是比较大的,毕竟是要为了刘海屏做些相应的改变。这其中个人认为最大的特点就是推出了安全区域 SafeArea概念,至于这个安全区域 SafeArea是什么,简单来说就是视图上不被其他视图所遮挡的区域,网上有很多这类的资料,在这就不详舒了。xcode 在 ios11及之后系统这个safeAreaInsets才为(20,0,0,0)或者(44.0.34.0),否则都是(0,0,0,0);

注意

在开发过程中我发现用iPhoneX 之前的手机中并且系统是 iOS12之前的系统时,safeAreaInsets会一直为(0,0,0,0)。不知道你们是不是也是这样的情况。

刘海屏幕的推出导致 iPhoneX 系列的手机状态栏从20变成44,状态栏从64变成88,获取导航栏高度可以看我这片博客,https://www.jianshu.com/p/4f9d750702ec

如果你的项目中有这类需求:

WX20181213-115721@2x.png WX20181213-115753@2x.png
上一篇 下一篇

猜你喜欢

热点阅读