WatchKit Extension のライフサイクルにおけるメソッドを見る

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

WatchKit Extension のライフサイクル

UIViewController に似たものとして、WatchKit Extension における WKInterfaceController があります。

ライフサイクルにおける各メソッドを見てみましょう。

なお、UIViewController オブジェクトのメソッドに例えていますが、別物です。あくまで呼ばれるタイミングなどをイメージしやすくするために書いています。ご了承ください。

ライフサイクル内のメソッド一覧

メソッド 機能
init interface controller を一番最初に初期化できます。
awakeWithContext: データ・ラベル・画像などを読み込んだり更新する目的で使われます。UIViewControllerにおける、awakeFromNibviewDidLoad に近いイメージでしょうか。
willActivate もうすぐユーザーに対して表示が行われるタイミングで呼ばれます。UIViewControllerで言えば、viewWillAppear: のようなイメージでしょうか。
didDeactivate interface のクリーンアップを行います。タイマーを無効化したり、アニメーションを止めたりします。再び willActivate が呼ばれるまで、interface オブジェクトに対して値をセットすることはできません。ザックリ viewDidDisappear: のようなイメージでしょうか。  

まとめ

通常のiPhoneアプリとは違いますが、似ていますね。

なお、AFNetworking等で有名な、Mattt Thompson さんによる WatchKit と UIKit の比較が、WatchKit - NSHipsterに掲載されています。こちらもぜひ御覧ください。