この投稿はWatchKit Advent Calendar 2014の8日目の記事です。

Glanceとは

glance_lister_2x

GlanceはユーザがあなたのWatch Appから重要な情報を表示するための補助的な機能です。
(つまり、実装しなくてもいいです。)
iOSでいう、通知センターのようなものだと思っています。
1つのWatch Appにつき、最大1つのGlanceを持つことができます。
GlanceはWKInterfaceControllerオブジェクトですが、ユーザの操作を受け付けません。
タップすると、あなたのWatch Appを起動します。
Handoffで起動するWKInterfaceControllerを設定することもできます。
(詳細は以下を参照)
WatchKitでHandoff | blog.haranicle.net

Youtubeに動画がありました。
ちょうど2分ぐらいからGlanceの挙動を見ることができます。

Glanceインタフェースガイドライン

  • すぐに情報を伝えられるように設計します。大量の文字を表示してはいけません。グラフィックス、色、アニメーションを適切に使用してください。
  • 最も重要な情報に焦点を当ててください。Glanceはアプリに変わるものではありません。重要な情報のみをトリミングして表示してください。
  • インタラクティブなコントロールを含めないでください。(含めても操作できないので)
  • テーブルとマップの使用は避けたほうがいいようです。禁止はされていませんが、限られたスペースはテーブル、マップは有用ではありません。
  • 表示する情報をタイムリーにしてください。ユーザに情報を提供するために、時刻や位置情報など利用できるすべてのリソースを使用してください。

Glanceの作り方

2通りあります。

Watch Appのターゲット作成時に自動生成

まだプロジェクトにWatch Appのターゲットがない場合はこの手順でGlanceを作成できます。こっちのほうがおすすめ。

File > New > Target… >
Watch Appを選択してNext >
Choose options for your new target:でInclude Glance Sceneにチェック >
Finish

これで、以下のものが作成されます。

  • WatchKit Extensionグループ内にGlanceController.swift
  • Watch Appグループ内のStoryboard内にGlance Interface

手動でGlance作成

すでにプロジェクトにWatch Appのターゲットにある場合はこの手順でGlanceを作成できます。

  1. Watch Appのグループを右クリック > New File… > Cococa Classを選択してNext > Class: 適当なクラス名、Subclass of:WKInterfaceControllerにしてNext > TargetsでWatchKit ExtensionのみにチェックしてCreate
  2. Watch Appのグループ内にあるStoryboardにGlance Interface Controllerを追加します。
  3. StoryboardにGlance Interface Controllerと 1. で作成したクラスのファイルを紐付け

iOSシミュレータでのGlanceの起動方法

Glance起動用のSchemeを作成

簡単にGlanceを起動できるようにするために、Schemeを作成します。
Product > Scheme > Edit Scheme… >
左上で”プロジェクト名 Watch App”のSchemeを選択 >
Duplicate SchemeボタンでSchemeを複製 >
“Copy of プロジェクト名 Watch App” SchemeのRunを選択 >
Info > Executableで”Glance – プロジェクト名 Watch App.app”を選択 >
Close

Run

“Copy of プロジェクト名 Watch App” Schemeを選択してRunボタンを押すと、
Glanceが表示されます。
Scheme名は、Product > Scheme > Manage Schemes… で変更できます。

宣伝

Swiftでカスタムキーボードアプリ作りました。買ってね!
特殊文字キーボード

Pocket