Navigation
hr.icon
人々は、アプリのナビゲーションが期待に沿わないものであるまで、そのことに気づかない傾向があります。
あなたの仕事は、それ自体に注目することなく、アプリの構造と目的をサポートするような方法でナビゲーションを実装することです。
ナビゲーションは、自然で親しみやすいものでなければならず、インターフェイスを支配したり、コンテンツからフォーカスをそらしたりするものであってはなりません。
iOSでは、3つの主なナビゲーションのスタイルがあります。
Hierarchical Navigation(階層型ナビゲーション)
目的地に着くまで、1画面につき1つの選択をする。
別の目的地に行くには、歩みを戻すか、最初からやり直し、別の選択をしなければなりません。
SettingsとMailは、このナビゲーションスタイルを採用しています。
https://gyazo.com/3087c547c2022788989c49767d53f9a6
Flat Navigation(平坦型ナビゲーション)
複数のコンテンツカテゴリーを切り替えて表示します。
MusicとApp Storeがこのナビゲーションスタイルを採用しています。
https://gyazo.com/f64b29c6967821db3e2eb91c0eac8643
Content-Driven or Experience-Driven Navigation(コンテンツ駆動型ナビゲーションとエクスペリエンス駆動型ナビゲーション)
コンテンツ内を自由に移動する、あるいはコンテンツそのものがナビゲーションを定義する。
ゲーム、書籍、その他の没入型アプリは、一般的にこのナビゲーションスタイルを採用しています。
https://gyazo.com/5b95aec02f8a90127bda91d61cc36156
アプリによっては、複数のナビゲーションスタイルを組み合わせているものもあります。
例えば、平坦型ナビゲーションを採用しているアプリでは、各カテゴリー内で階層的なナビゲーションを実装することがあります。
常に明確な経路を提供する。
ユーザーは、アプリのどこにいて、どのように次の目的地に行くかを常に知っている必要があります。
ナビゲーションのスタイルにかかわらず、コンテンツを通過する経路が論理的で、予測可能で、簡単にたどれることが重要です。
一般に、各画面への経路は1つにします。
1つの画面を複数のコンテキストで表示する必要がある場合は、アクションシート、アラート、ポップオーバー、モーダルビューの使用を検討してください。
コンテンツにすばやく簡単にアクセスできる情報構造を設計する。
タップ、スワイプ、スクリーンの数が最小限になるように、情報構造を整理します。
タッチジェスチャーを使用して、流動性を生み出します。
摩擦を最小限に抑え、インターフェイス内を簡単に移動できるようにします。
例えば、画面の横からスワイプして前の画面に戻ることができるようにします。
標準的なナビゲーションコンポーネントを使用する。
可能な限り、ページコントロール、タブバー、セグメントコントロール、テーブルビュー、コレクションビュー、スプリットビューなど、標準的なナビゲーションコンポーネントを使用します。
ユーザーはこれらのコントロールにすでに慣れており、アプリをどのように操作すればよいかを直感的に理解できます。
ナビゲーションバーは、データの階層をたどるために使用します。
ナビゲーションバーのタイトルには、階層内の現在の位置が表示され、バックボタンで前の位置に簡単に戻ることができます。
タブバーを使って、コンテンツや機能の仲間分けをすることができます。
タブバーを使用すると、現在の場所に関係なく、すばやく簡単にカテゴリーを切り替えることができます。
iPadでは、タブバーの代わりにスプリットビューを使用します。
スプリットビューは、タブバーと同じクイックナビゲーションを提供しながら、大きなディスプレイをより有効に活用できます。
同じ種類のコンテンツが複数ページある場合は、ページコントロールを使用します。
ページコントロールは、利用可能なページ数と現在アクティブなページがどれであるかを明確に伝えることができます。
天気予報アプリでは、ページコントロールを使用して、場所ごとの天気予報ページを表示しています。
Tips
セグメント化されたコントロールとツールバーでは、ナビゲーションはできません。
セグメント化されたコントロールは、情報をさまざまなカテゴリに整理するために使用します。
ツールバーは、現在のコンテキストと対話するためのコントロールを提供するために使用します。