ios如何判断这个手机是iphoneX系列的xs xmax xr

你的小可爱已上线

首先说下思路就是根据安全区去 判断是否是X系列,以前的因为只有一个iPhone X,现在X繁衍了好多不同屏幕大小我们不能根据屏幕大小去判断,准确说不是不能如果更多尺寸岂不是很多内容太麻烦了,这样可以大大减少代码量,根据不同机型可以对导航栏高度,状态栏高度,分栏控制器高度进行赋值计算等!下面上代码

//MARK: - 判断X系列的安全区 判断是否是X系列
var isIPhoneX:Bool{
    var iPhoneX:Bool = false
    if UIDevice.current.userInterfaceIdiom != UIUserInterfaceIdiom.phone{
        return iPhoneX
    }
    if #available(iOS 11.0, *) {
        if Double((UIApplication.shared.delegate?.window??.safeAreaInsets.bottom)!) > 0.0 {
            iPhoneX = true
        }
    }
    return iPhoneX
}

这样我们可以根据返回值去判断是不是X系列手机然后再进行这样操作,这些代码不陌生吧!哈哈哈哈是不是就一个方法很简单解决很多问题呢

var height64 : CGFloat {
    if isIPhoneX {
        return CGFloat(88)
    }else{
        return CGFloat(64)
    }
    
}

var height20 : CGFloat {
    if isIPhoneX {
        return CGFloat(44)
    }else{
        return CGFloat(20)
    }
}

var height49 : CGFloat {
    if isIPhoneX {
        return CGFloat(83)
    }else{
        return CGFloat(49)
    }
}

需要的人可以直接copy走吧!记得帮我点点❤ 爱你哟!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,884评论 2 59
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,008评论 3 119
  • 不是每天都有灵感,所以文章的更新速度不是很快,但是很感谢简书这个平台,能让我有一个实现当作者的机会!
    家和万事亨阅读 166评论 0 1
  • 对于坚持这件事来说,我还是比较有经验的,因为我自己坚持过很多事情,有半途而废的,也有一直坚持的,我就打算分享一下...
    annlili阅读 226评论 0 0
  • 我不知道你最近发生了什么,突然间,你说让我列一些你的缺点,我一时间根本想不起来,因为你在我的记忆里,一直都包容着...
    爱简书的蕤人阅读 395评论 0 0