Jetpack Navigation 3 スキル

移行ガイド

  • Navigation 2 から Navigation 3 への移行ガイド: Android アプリケーションを Navigation 2 から Navigation 3 に移行するためのステップごとのガイド。依存関係の更新、ルートの変更、状態管理、UI コンポーネントの置き換えについて説明します。

要件

デベロッパー ドキュメント

  • *Navigation 3。基本、ナビゲーション状態の保存と管理、ナビゲーション コードのモジュール化、Scene を使用したカスタム レイアウトの作成、デスティネーション間のアニメーション、デスティネーションへのロジックまたはラッパーの適用について詳しくは、ドキュメントを検索してください。

レシピ

一般的なパターンを示すコード例。

基本的な API の使用方法

共通 UI

  • Common UI: ボトム ナビゲーション バーと複数のバックスタックを使用して、一般的なナビゲーション UI パターンを実装する方法を示します。ナビゲーション バーの各タブには、独自のナビゲーション履歴があります。
  • Basic: Android の Intent からナビゲーション キーにディープリンク URL を解析する方法を示します。
  • 高度な方法: 合成バックスタックと正しい「上へ」ナビゲーション動作でディープリンクを処理する方法を示します。

シーン

組み込みのシーンを使用する

  • Dialog: ダイアログの作成方法を示します。

カスタム シーンを作成する

  • BottomSheet: BottomSheet のデスティネーションを作成する方法を示します。
  • リストと詳細のシーン: Navigation 3 Scenes API を使用してアダプティブなリストと詳細のレイアウトを実装する方法を示します。
  • 2 ペインの Scene: Navigation 3 Scenes API を使用してアダプティブ 2 ペイン レイアウトを実装する方法を示します。

Material Adaptive

  • マテリアル リストと詳細: マテリアル 3 アダプティブを使用してアダプティブ リストと詳細レイアウトを実装する方法を示します。
  • マテリアル補助ペイン: マテリアル 3 アダプティブを使用してアダプティブ補助ペイン レイアウトを実装する方法を示します。

アニメーション

  • アニメーション: すべてのデスティネーションと単一のデスティネーションのデフォルトのアニメーションをオーバーライドする方法を示します。

一般的なバックスタックの動作

  • 複数のバックスタック: それぞれ独自のバックスタックを持つ複数のトップレベル ルートを作成する方法を示します。最上位のルートはナビゲーション バーに表示され、ユーザーはそれらを切り替えることができます。状態は最上位のルートごとに保持され、ナビゲーションの状態は構成の変更やプロセスの終了後も保持されます。

条件付きナビゲーション

  • 条件付きナビゲーション: 条件が満たされたときに別のナビゲーション フローに切り替えます。たとえば、認証や初回ユーザーのオンボーディングなどです。

アーキテクチャ

ViewModel の操作

ナビゲーション引数を渡す

  • 基本的な ViewModel: ナビゲーション引数が viewModel() を使用して構築された ViewModel に渡されます

結果を返す