ナビゲーション ドロワー
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ナビゲーション ドロワーは、ユーザーがさまざまなデスティネーションや機能にアクセスできるようにするため、どのテレビアプリでも不可欠なコンポーネントです。ナビゲーション ドロワーはアプリの情報アーキテクチャのバックボーンであり、アプリ内をわかりやすく直感的に移動できる方法を提供します。
モバイルのナビゲーション ドロワーとは対照的に、テレビのナビゲーション ドロワーは、展開状態と閉じ状態の両方をユーザーに表示します。

リソース
ハイライト
- デスティネーションは、ユーザーの重要度に応じて並べ替えられます。頻繁に訪れるデスティネーションが最初に表示され、関連するデスティネーションがグループ化されます。
- 標準のナビゲーション ドロワーとモーダル ナビゲーション ドロワーの両方で、閉じたときにナビゲーション レールが必要になります。
バリエーション
ナビゲーション ドロワー スタイルには次の 2 種類があります。
- 標準のナビゲーション ドロワー - 展開するとナビゲーション用のスペースが追加され、ページ コンテンツが押しやられます。
- モーダル ナビゲーション ドロワー - アプリのコンテンツの上にオーバーレイとして表示され、ドロワーが開いているときに読みやすさを高めるためにスクリムが表示されます。


標準のナビゲーション ドロワー
解剖学

- 上部セクション: アプリのロゴが表示されます。プロファイルを切り替えるボタンや、検索アクションをトリガーするボタンとして機能します。閉じた状態の一番上のコンテナには、アイコンのみが表示されます。
- ナビゲーション アイテム: ナビゲーション レールの各アイテムには、アイコンとテキストが組み合わされています。折りたたまれた状態のアイテムにはアイコンのみが表示されます。
- ナビゲーション レール: ナビゲーション レールは、3 ~ 7 個のアプリのデスティネーションを表示する列で、メインメニューとして機能します。各リンク先にはテキストラベルとオプションのアイコンがあり、コンテキストを重視してメニュー項目をグループ化することもできます。
- 下部セクション: 1 ~ 3 個のアクション ボタンを配置できます。設定、ヘルプ、プロフィールなどのページに適しています。
動作
- ナビゲーション ドロワーの展開: 標準のナビゲーション ドロワーを開くと、ページ コンテンツが押し下げられ、ナビゲーションの展開バージョンのスペースが確保されます。
- ナビゲーションの更新: ナビゲーション アイテム間を移動すると、ページが新しいデスティネーションに自動的に更新されます。
モーダル ナビゲーション ドロワー
解剖学

- 上部セクション: アプリのロゴが表示されます。プロファイルを切り替えたり、検索アクションをトリガーしたりするためのボタンとして機能します。閉じた状態の一番上のコンテナには、アイコンのみが表示されます。
- ナビゲーション アイテム: ナビゲーション レールの各アイテムには、アイコンとテキストが組み合わされています。折りたたまれた状態のアイテムにはアイコンのみが表示されます。
- ナビゲーション レール: 3 ~ 7 個のアプリ デスティネーションを表示する列。メインメニューとして機能します。各リンク先にはテキストラベルとオプションのアイコンがあり、コンテキストを重視してメニュー アイテムをグループ化することもできます。
- スクリム: ナビゲーション アイテムのテキストを読みやすくします。
- 下部セクション: 1 ~ 3 個のアクション ボタンを配置できます。設定、ヘルプ、プロフィールなどのページに適しています。
動作
- 引き出しの展開: アプリのコンテンツの上にオーバーレイとして表示され、引き出しが展開されたときに読みやすさを高めるスクリームが付いています。
- ナビゲーションの更新: ユーザーがナビゲーション アイテムを選択したときに発生します。
スクリム
モーダル ナビゲーション ドロワーの場合、ドロワーの背後にスクリームを配置すると、ドロワーのコンテンツを読みやすくできます。ナビゲーション ドロワーの背後にグラデーションまたは単色のサーフェスを使用して、UI のさまざまなバリエーションを作成できます。

グラデーション スクリム

無地のスクリム
仕様



使用方法
アクティブ インジケーター
アクティブ インジケーターは、表示されているナビゲーション ドロワーのリンクをハイライト表示する視覚的な手がかりです。通常、インジケーターは、引き出し内の他のアイテムとは視覚的に異なる背景の形状で表されます。アクティブ インジケーターは、アプリ内の現在地と閲覧しているデスティネーションをユーザーに知らせます。アクティブ インジケーターがはっきりと表示され、ナビゲーション ドロワー内の他のアイテムと簡単に区別できるようにします。
分割線(省略可)
分割線を使用すると、ナビゲーション ドロワー内の目的地のグループを分割して整理できます。ただし、分割線が多すぎると視覚的なノイズが発生し、ユーザーに不要な認知的負荷をかける可能性があるため、分割線は控えめに使用してください。
バッジ
バッジは、ナビゲーション アイテムに追加して追加情報を提供する視覚的な手がかりです。たとえば、バッジを使用して、ストリーミング アプリで利用可能な新作映画の数を示すことができます。バッジは、UI が雑然と見える可能性があるため、必要に応じて慎重に使用してください。バッジを使用する場合は、バッジが明確でわかりやすく、ユーザーがアプリを操作する際に邪魔にならないようにします。

バッジが展開された状態

バッジを閉じた
ラベル
ナビゲーション ドロワーのラベルは、読みやすくするために明確で簡潔にする必要があります。
warning
注意
長いラベルを使用せざるを得ない場合は、省略記号を使用してラベルを切り捨てます。
cancel
すべきでないこと
折り返しが必要な長いテキストラベルは使用しないでください。
cancel
すべきでないこと
アイコンのないナビゲーション ドロワーは、ユーザーがアプリを操作しにくくなる可能性があるため、作成しないでください。
cancel
すべきでないこと
アイコン ナビゲーション アイテムとアイコン以外のナビゲーション アイテムを混在させないでください。混在すると、ユーザーがナビゲーションを混乱させる可能性があります。
ナビゲーション ドロワーは、アプリの階層を表す基本要素であり、5 ~ 6 つのメイン ナビゲーション デスティネーションのみを表示するために使用する必要があります。
check_circle
すべきこと
ユーザー エクスペリエンスを向上させるため、ナビゲーション ドロワー内のメイン ナビゲーション デスティネーションの数を 5 ~ 6 個に制限します。
cancel
すべきでないこと
ナビゲーション アイテムを追加しすぎると、縦方向のスクロールが発生し、ユーザーがアプリを操作しにくくなるため、追加しすぎないようにしてください。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-07-27 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-27 UTC。"],[],[],null,["# Navigation drawers are essential components in any TV app as they allow users\nto access different destinations and features. A navigation drawer is the\nbackbone of the app's information architecture, providing a clear and intuitive\nway to navigate through the app.\n\nIn contrast to the mobile navigation drawer, the navigation drawer on\nTV has both expanded and collapsed states visible to the user.\n\nResources\n---------\n\n| Type | Link | Status |\n|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------|\n| Design | [Design source (Figma)](https://goo.gle/tv-desing-kit) | Available |\n| Implementation | [Jetpack Compose (NavigationDrawer)](/reference/kotlin/androidx/tv/material3/package-summary#NavigationDrawer(kotlin.Function2,androidx.compose.ui.Modifier,androidx.tv.material3.DrawerState,kotlin.Function0)) [Jetpack Compose (ModalNavigationDrawer)](/reference/kotlin/androidx/tv/material3/package-summary#ModalNavigationDrawer(kotlin.Function2,androidx.compose.ui.Modifier,androidx.tv.material3.DrawerState,androidx.compose.ui.graphics.Brush,kotlin.Function0)) | Available |\n\nHighlights\n----------\n\n- Destinations are ordered according to user importance, with frequent destinations first and related destinations grouped together.\n- A navigation rail is required for both standard and modal navigation drawers when collapsed.\n\nVariants\n--------\n\nThere are two type of navigation drawer styles:\n\n1. **Standard navigation drawer** --- Expands to create additional space for navigation, pushing the page content aside.\n2. **Modal navigation drawer** --- Appears as an overlay on top of the app's content with a scrim that helps to improve readability when the drawer is expanded.\n\nStandard navigation drawer\n--------------------------\n\n### Anatomy\n\n1. **Top section:** Features the app logo. Serves as a button to switch profiles or to trigger search action. In the collapsed state, only the icon remains visible in the top container.\n2. **Navigation item:** Each item in the navigation rail features a combination of an icon and text, with only the icon visible in the collapsed state.\n3. **Navigation rail:** The Navigation Rail is a column that shows 3 to 7 app destinations, acting as the main menu. Each destination has a text label and an optional icon, with the option of grouping menu items for better contextuality.\n4. **Bottom section:** Can have one to three action buttons, which are ideal for pages like settings, help, or profile.\n\n### Behavior\n\n- **Navigation drawer expansion:** When expanded the standard navigation drawers pushes the page content making space for the expanded version for the navigation.\n- **Navigation updates:** Moving from one nav item to another, the page automatically updates to the new destination.\n\nModal navigation drawer\n-----------------------\n\n### Anatomy\n\n1. **Top section:** Features the app logo. Serves as a button to switch profiles or to trigger a search action. In the collapsed state, only the icon remains visible in the top container.\n2. **Navigation item:** Each item in the navigation rail features a combination of an icon and text, with only the icon visible in the collapsed state.\n3. **Navigation rail:** Column that shows three to seven app destinations, acting as the main menu. Each destination has a text label and an optional icon, with the option of grouping menu items for better contextuality.\n4. **Scrim:** For better readability of navigation item text.\n5. **Bottom section:** Can have one to three action buttons, which are ideal for pages like settings, help, or profile.\n\n### Behavior\n\n- **Drawer expansion:** Appears as an overlay on top of the app's content, with a scrim that improves readability when the drawer is expanded.\n- **Navigation updates:** Occur when the user selects a navigation item.\n\n### Scrim\n\nFor the modal navigation drawer, a scrim behind the\ndrawer ensures the drawer content is readable. You can\nuse a gradient or solid surface behind the navigation drawer to create different\nvariations of the UI.\n\n\nGradient scrim \n\nSolid scrim\n\n\u003cbr /\u003e\n\nSpec\n----\n\nUsage\n-----\n\n\n### Active Indicator\n\nThe active indicator is a visual cue that highlights the navigation drawer\ndestination that is displayed. The indicator is typically represented by a\nbackground shape that is visually distinct from the other items in the drawer.\nThe active indicator helps users understand where they are in the app and which\ndestination they are browsing. Ensure that the active indicator is clearly\nvisible and easier to distinguish from the other items in the navigation drawer. \n\n\u003cbr /\u003e\n\n\n### Dividers (optional)\n\nDividers can be used to separate groups of destinations within the navigation\ndrawer for better organization. However, it's important to use them sparingly as\ntoo many dividers can create visual noise and add unnecessary cognitive overload\nfor users. \n\n\u003cbr /\u003e\n\n### Badges\n\nBadges are visual cues that can be added to navigation items to provide\nadditional information. For example, a badge could be used to\nindicate the number of new movies available in a streaming app. Use\nbadges sparingly and only when necessary, as they can\nmake the UI appear busy and cluttered. When using badges, ensure that\nthey are clear and easier to understand and that they don't\ninterfere with the user's ability to navigate the app.\n\n\nBadge expanded \n\nBadge collapsed\n\n\u003cbr /\u003e\n\n### Labels\n\nLabels in the navigation drawer should be clear and concise so that they\nare easier to read. \nwarning\n\n### Caution\n\nIf it's impossible to avoid using long labels, truncate the label using an ellipsis. \ncancel\n\n### Don't\n\nAvoid using long text labels that require wrapping. \ncancel\n\n### Don't\n\nAvoid creating a navigation drawer without icons, as this can make it difficult for users to navigate the app. \ncancel\n\n### Don't\n\nAvoid mixing icon navigation items with non-icon navigation items, as this can make the navigation experience confusing for users.\n\nNavigation drawers are foundational elements that represent your app's\nhierarchy and should be used to list only five to six primary\nnavigation destinations. \ncheck_circle\n\n### Do\n\nLimit the number of main navigation destinations in the navigation drawer to five to six for a better user experience. \ncancel\n\n### Don't\n\nAvoid adding too many navigation items as this can create a vertical scroll and make it harder for users to navigate the app."]]