没入型により、ユーザー入力を利用してユーザー コンテンツを作成する インターフェースです。これにより、ユーザーに最適なカスタム環境を作成できます。 最も手間のかかる作業です
Glass 用の開発を初めて行う場合は、 没入ガイド してください。このドキュメントでは、完全な Glassware を構築する方法について説明します。 Google の設計ベスト プラクティスに沿って、没入型の体験を実現しました。
仕組み
没入型はタイムラインの外側に表示され、ユーザーが自在に操作できます Glass がイマージョンをリリースした時点からのユーザー エクスペリエンスに重点を置いています。
Android の標準的なアクティビティで没入感を演出します。 レイアウト、UI ウィジェット、Android プラットフォームのその他の部分です。 その後、GDK を使用して Glass エクスペリエンスに統合します。 たとえば 音声コマンドの統合や グラススタイルのカード 使用できます。
没入が開始されると、タイムライン上に表示されます。 没入感を味わったユーザーは、 元の画面に戻すには、下にスワイプします。
アフィリエイト住所表示オプションの目的
没入型は、長時間のユーザーの注意を必要とするエクスペリエンスに適しています。 タイムラインの外側に表示される専用の UI を作成できるため、 ユーザーはカスタマイズされた体験をより深く掘り下げられます
タイムライン固有のルールを上書きする必要がある場合にも、没入型を使用する必要があります。 たとえば、前後にスワイプしたり、画面の 画面自動消灯。
ただし、没入型は必要な場合にのみ使用してください。これは、 構築と設計に多くの時間が必要になります 有効なカードであれば、 機能もサポートしています。
没入感を生み出す
イマーシブを作成するには、標準の Android アクティビティですが、 Glass のアクティビティを記述する際は、次の点に注意してください:
- 640 × 360 ピクセルの画面用に UI をデザインします。
- 移植するのではなく、Glass で意味のある操作を設計する 他の Android デバイスのアクティビティよりも優先できます。
- 複雑なタップ操作や UI パターンに依存しない。
- 下にスワイプすると、タイムラインが表示されるまで常にアクティビティ スタック内に戻ります。本来は スマートフォンやタブレットの Android の [戻る] ボタンのように機能します。
- 50 × 50 ピクセルのアイコンを作成し、次の
android:icon
属性に指定します。 Android マニフェストの<activity>
要素に追加します。android:label
のテキストも指定します。 これにより、複数の Glassware に関連付けられている音声またはタップのメニュー項目から、 Glassware の名前とアイコンを選択肢として表示します android:immersive="true"
を指定します。<activity>
要素に、画面がスリープ状態になった後に没入型フォーカスを維持し、 目が覚めます。
メニューの作成と表示
Glass に正しいスタイルが表示される (標準の Android メニューで作成した場合) アクティビティ内の API です。
アクティビティのメニューを表示するには、メニュー リソースを作成してから、 たとえば、ユーザーがアクティビティを行ったときに 焦点を当てています。
メニュー リソースの作成
メニュー リソースの作成は Android プラットフォームの場合と同じですが、 ガイドライン:
- 各メニュー項目に、50 × 50 ピクセルのメニュー項目アイコンを提供する。メニュー アイコンは透明な背景上の白色にする必要があります。 Glass のメニュー アイコンをダウンロードする 使用できます。
- アクションを説明する短いフレーズ(文頭を大文字にしたもの)を使用します。 命令形動詞も適しています(「共有」や「全員に返信」など)。
簡単に始められるのがこちらです。
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/reply_menu_item"
android:title="@string/reply" <!-- imperative verb -->
android:icon="@drawable/icons_50_reply" /> <!-- white in color on
transparent background
-->
</menu>
Android メニューの作成について詳しくは、 Menu トピック( Android SDK ドキュメント。
メニュー コールバックの処理
Activity
クラスには、メニューの作成、表示、破棄を処理するためにオーバーライドするコールバックが含まれています。
onCreateOptionsMenu()
XML メニュー リソースをインフレートします。onPrepareOptionsMenu()
必要に応じてメニュー項目を表示または非表示にします。たとえば、さまざまなメニュー項目を 自動的に最適化されます。onOptionsItemSelected()
はユーザー選択を処理します。public class MyActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.stopwatch, menu); return true; } @Override public boolean onPrepareOptionsMenu(Menu menu) { // Implement if needed } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle item selection. Menu items typically start another // activity, start a service, or broadcast another intent. switch (item.getItemId()) { case R.id.stop: startActivity(new Intent(this, StopStopWatchActivity.class)); return true; default: return super.onOptionsItemSelected(item); } } }
メニューの表示
メニューを表示するには、呼び出します。
openOptionsMenu()
タッチパッドのタップなどの操作が加わります。次の例では、
アクティビティ上でタップ操作を行ってから、openOptionsMenu()
を呼び出す。
public class MainActivity extends Activity {
// ...
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
openOptionsMenu();
return true;
}
return super.onKeyDown(keyCode, event);
}
}
メニュー ユーティリティ
メニューの外観と動作を変更するためのヘルパー メソッドが用意されています。詳しくは、MenuUtils
をご覧ください。