LoginSignup
1
1

More than 5 years have passed since last update.

Apple Watchの画面サイズを取得する方法

Posted at

Apple Watchの画面サイズenumを作成して、38mmと42mmを設定します。

enum CaseSize: Int {
    case size38mm = 38
    case size42mm = 42
}

WKInterfaceDeviceextensioncurrentCaseSizeメソッドを追加します。
(将来的におおきいサイズのWatchが発売された場合のために、38mmと42mm以外は42mmにしています。エラーにしたい場合などは、enumにnoneを追加してdefaultで.noneをretrunするといいかと)

extension WKInterfaceDevice {

    class func currentCaseSize() -> CaseSize {
        let width38mm: CGFloat = 136.0
        let width42mm: CGFloat = 156.0
        let width = WKInterfaceDevice.current().screenBounds.size.width

        switch width {
        case width38mm:
            return .size38mm
        case width42mm:
            return .size42mm
        default:
            return .size42mm
        }
    }

}

[awake(: )]で実行してみました。

    override func awake(withContext context: Any?) {
        super.awake(withContext: context)

        let caseSize = WKInterfaceDevice.currentCaseSize()
        print("\(caseSize.rawValue)")
    }

デバッグエリアに38mmと表示されました。

スクリーンショット 2018-03-02 12.39.48.png

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1