Android 技能
前往 GitHub 查看Jetpack Navigation 3
使用 Android 技能,協助您透過 Jetpack Navigation 3 建構。
如要透過 Android CLI 安裝技能,請執行:
android skills add navigation-3Navigation 3 是專為搭配 Compose 使用而設計的導覽程式庫。使用 Navigation 3 時,您可以完全掌控返回堆疊,並透過在清單中新增及移除項目,在目的地之間導覽。它提供以下功能,可建立彈性的應用程式導覽系統:
- 建立返回堆疊模型的慣例,其中返回堆疊上的每個項目都代表使用者瀏覽過的內容
- UI 會隨著返回堆疊變更自動更新 (包括動畫)
- 返回堆疊中項目的範圍,允許在項目位於返回堆疊時保留狀態
- 自動調整版面配置系統,可同時顯示多個目的地,並在這些版面配置之間流暢切換
- 內容與上層布局通訊的機制 (中繼資料)
- 目的地間通訊,在畫面之間傳回結果
大致來說,您可以透過下列方式導入 Navigation 3:
- 定義使用者可在應用程式中前往的內容,每個內容都有專屬索引鍵,並新增函式,將該索引鍵解析為內容。請參閱「將金鑰解析為內容」。
- 建立返回堆疊,在使用者瀏覽應用程式時推送及移除索引鍵。請參閱「建立返回堆疊」。
- 使用
NavDisplay顯示應用程式的返回堆疊。每當返回堆疊變更時,系統就會更新 UI,顯示相關內容。請參閱「顯示返回堆疊」。 - 視需要修改
NavDisplay的場景策略,以支援自動調整式版面配置和不同平台。 - 支援深層連結,可直接前往目的地。
您可以在 AOSP 上查看 Navigation 3 的完整原始碼。
Jetpack Navigation 的改良功能
Navigation 3 在原始 Jetpack Navigation API 的基礎上,進行了以下改良:
- 與 Compose 整合更簡單
- 可讓您完全控管返回堆疊
- 可建立能同時從返回堆疊讀取多個目的地的版面配置,以便配合視窗大小和其他輸入內容的變更進行調整。
如要進一步瞭解 Navigation 3 的原則和 API 設計選擇,請參閱公告網誌文章。
程式碼範例
recipes 存放區包含範例,說明如何使用 Navigation 3 建構區塊解決常見的導航問題。