【问题标题】:Detecting latest apple devices Xs, X(R)检测最新的苹果设备 Xs, X(R)
【发布时间】:2018-09-17 11:30:56
【问题描述】:

我需要以编程方式检测最新的 iphone 设备。我有以前型号的所有设备标识符,但我需要 iPhone Xs max、iPhone Xs、iPhone X(R) 的设备标识符。

【问题讨论】:

    标签: iphone xcode8 iphone-x


    【解决方案1】:

    适用于 XCode 9Swift 4

    extension UIDevice {
        var iPhoneX: Bool {
            return UIScreen.main.nativeBounds.height == 2436
        }
        var iPhone: Bool {
            return UIDevice.current.userInterfaceIdiom == .phone
        }
        enum ScreenType: String {
            case iPhones_4_4S = "iPhone 4 or iPhone 4S"
            case iPhones_5_5s_5c_SE = "iPhone 5, iPhone 5s, iPhone 5c or iPhone SE"
            case iPhones_6_6s_7_8 = "iPhone 6, iPhone 6S, iPhone 7 or iPhone 8"
            case iPhones_6Plus_6sPlus_7Plus_8Plus = "iPhone 6 Plus, iPhone 6S Plus, iPhone 7 Plus or iPhone 8 Plus"
            case iPhones_X_XS = "iPhone X or iPhone XS"
            case iPhone_XR = "iPhone XR"
            case iPhone_XSMax = "iPhone XS Max"
            case unknown
        }
        var screenType: ScreenType {
            switch UIScreen.main.nativeBounds.height {
            case 960:
                return .iPhones_4_4S
            case 1136:
                return .iPhones_5_5s_5c_SE
            case 1334:
                return .iPhones_6_6s_7_8
            case 1792:
                return .iPhone_XR
            case 1920, 2208:
                return .iPhones_6Plus_6sPlus_7Plus_8Plus
            case 2436:
                return .iPhones_X_XS
            case 2688:
                return .iPhone_XSMax
            default:
                return .unknown
            }
        }
    }
    

    并简单地使用它:

    print("screen Type:", UIDevice.current.screenType.rawValue)
    

    也可以访问这里了解 iPhone 设备的屏幕分辨率。

    https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-27
      • 1970-01-01
      • 1970-01-01
      • 2011-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多