ios兼容iphonex刘海屏解决方案

版权声明:本文为博主杜锦阳原创文章,未经博主允许不得转载,如有侵权将依法追究其法律责任。 https://blog.csdn.net/DJY1992/article/details/80683213

转载请标明出处:
https://blog.csdn.net/djy1992/article/details/80683213
本文出自:【奥特曼超人的博客】

目录:

简单描述

刘海屏也有其它叫法:凹凸屏、头凹屏、覆盖屏、挖孔屏等等,这里统一按刘海屏命名,虽然都在吐槽IPhoneX的刘海屏,但是各大安卓厂商还是不停的争相模仿,使用起来也是挺不方便的,颜值上升,操作感下降,尤其是单手握住屏幕的边缘时会有极大的不便。

首先借鉴下网络的手机图片展示下,苹果IOS的还好,但是安卓的厂商有小米、华为、oppo、vivo等都相应的出了自己的刘海屏,各大厂商也出了自己兼容刘海屏的方案,我们在另外一篇文章中会提及到安卓全家桶——各大厂商的刘海屏解决方案。

兼容IOS刘海屏

今年IOS除了5.8英寸iPhone X更新外,还有iPhone X Plus和6.1英寸廉价版iPhone X,iOS 12将于6月与我们见面,现在苹果发布最新公告显示,从今年7月开始,iOS系统开发者提交的所有App,都必须要兼容iOS 11 SDK,同时还都要支持iPhone X的刘海全面屏。

这里使用Swift 新语法 guard 语法 ,当然,使用 guard 语句 你必须考虑条件失败的情况 。

func isAndroidOrIPhone(x:Int) {
    guard x >0 else {

        //变量不符合条件判断时执行下面代码
        return
    }
    //使用x
}

IOS判断刘海屏的方法:可以使用safeAreaInsets方法,当返回值为0时,为长方形,非0时即认为是iphone x,原理是判断是传统长方形还是圆角矩形。

func isIPhoneXType() -> Bool {
        guard #available(iOS 11.0, *) else {
            return false
        }
    return UIApplication.shared.windows[0].safeAreaInsets != UIEdgeInsets.zero
}

推荐:

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试