ホーム

デバイスの種類を判定 - iOS

実装

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        switch UIDevice.current.userInterfaceIdiom {
        case .phone:
            print("phone")
            break
        case .pad:
            print("pad")
            break
        case .unspecified: break
        case .tv:
            print("tv")
            break
        case .carPlay:
            print("carPlay")
            break
        }
}

説明

userInterfaceIdiomという変数にアクセスしていますが、userInterfaceIdiomopen var userInterfaceIdiom: UIUserInterfaceIdiom { get }という変数であり、open var userInterfaceIdiom: UIUserInterfaceIdiom { get }という変数は、下記のようにemiuで定義されています。

         public enum UIUserInterfaceIdiom : Int {


         case unspecified

         @available(iOS 3.2, *)
         case phone // iPhone and iPod touch style UI

         @available(iOS 3.2, *)
         case pad // iPad style UI

         @available(iOS 9.0, *)
         case tv // Apple TV style UI

         @available(iOS 9.0, *)
         case carPlay // CarPlay style UI
         }

UIUserInterfaceIdiomにアクセスすることで、デバイスを判定することができます。使い方は下記のように使います。print(UIDevice.current.userInterfaceIdiom)

Pocket
LinkedIn にシェア

-ホーム

Copyright© off.tokyo , 2021 All Rights Reserved Powered by AFFINGER5.