導覽

Stay organized with collections Save and categorize content based on your preferences.

導覽是指允許使用者在應用程式的不同內容片段中,自由進行瀏覽、進入及退出的互動方式。Android Jetpack 的導覽元件可協助您實作導覽作業,包括簡單的按鈕點擊或應用程式列與導覽匣等較為複雜的模式。導覽元件還透過遵循一組既定原則來確保提供一致且可預測的使用者體驗。

導覽元件包含以下三個關鍵部分:

  • 導覽圖:一種 XML 資源,在一個集中位置包含所有導覽相關的資訊。這包括應用程式內的所有個別內容區域 (稱為「目的地」),以及使用者能透過應用程式獲取的可能路徑。
  • NavHost:顯示導覽圖中目的地的空白容器。導覽元件包含預設的 NavHost 實作 (NavHostFragment),可顯示片段目的地。
  • NavController:在 NavHost 中管理應用程式導覽的物件。當使用者在整個應用程式中移動時,NavController 會自動化調度管理 NavHost 中目的地內容的交換。

瀏覽應用程式時,您會告知 NavController 您想沿導覽圖中的特定路徑瀏覽,或直接前往特定目的地。NavController 會在 NavHost 中顯示相應的目的地。

導覽元件提供許多其他好處,包括:

  • 處理片段交易。
  • 根據預設,正確處理「向上」和「返回」動作。
  • 為動畫與轉換提供標準化資源。
  • 實作及處理深層連結。
  • 包括導覽 UI 模式 (如導覽匣及底部導覽),使用者只需完成極少的額外工作。
  • Safe Args - 一種 Gradle 外掛程式,可在目的地之間瀏覽及傳遞資料時提供類型安全。
  • ViewModel 支援 - 您可將 ViewModel 的範圍限定為導覽圖,以在圖表的目的地之間共用 UI 相關資料。

此外,您亦可使用 Android Studio 的導覽編輯器檢視及編輯導覽圖。

後續步驟

如需有關導覽元件的更多文件與資源,請參閱下列內容。

開始使用

其他主題

範例

程式碼研究室

網誌文章

影片