Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

デスティネーションを作成する

既存のフラグメントまたはアクティビティからデスティネーションを作成できます。また、Navigation Editor を使用して、新しいデスティネーションを作成する、または後でフラグメントあるいはアクティビティに置き換えるプレースホルダを作成することもできます。

既存のフラグメントまたはアクティビティからデスティネーションを作成する

既存のデスティネーション タイプをナビゲーション グラフに追加する場合は、Navigation Editor 内で、[New Destination]()をクリックして、表示されるプルダウンから、目的のデスティネーションをクリックします。ナビゲーション グラフの [Design] ビューにデスティネーションのプレビューが表示され、[Text] ビューに対応する XML が表示されます。

新しいフラグメント デスティネーションを作成する

Navigation Editor を使用して新しいデスティネーション タイプを追加する手順は次のとおりです。

  1. Navigation Editor 内で、[New Destination] アイコン をクリックして、[Create new destination] をクリックします。
  2. 表示された [New Android Component] ダイアログで、フラグメントを作成します。 フラグメントの詳細については、フラグメントのドキュメントをご覧ください。

Navigation Editor に戻ると、作成したデスティネーションが Android Studio によってグラフに追加されています。

デスティネーションとプレースホルダ デスティネーションの例を図 1 に示します。

図 1. デスティネーションとプレースホルダ

DialogFragment からデスティネーションを作成する

既存の DialogFragment がある場合は、<dialog> 要素を使用してダイアログをナビゲーション グラフに追加できます。以下の例をご覧ください。

<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/nav_graph">

...

<dialog
    android:id="@+id/my_dialog_fragment"
    android:name="androidx.navigation.myapp.MyDialogFragment">
    <argument android:name="myarg" android:defaultValue="@null" />
        <action
            android:id="@+id/myaction"
            app:destination="@+id/another_destination"/>
</dialog>

...

</navigation>

プレースホルダ デスティネーション

プレースホルダを使用して、未実装のデスティネーションを示すことができます。 プレースホルダは、デスティネーションの視覚的な表現として機能します。Navigation Editor 内では、通常のデスティネーションと同様に、プレースホルダを使用できます。