Android Studio enthält ein GUI, mit dem Sie ein Navigationsdiagramm erstellen und bearbeiten können. Dies ist im Wesentlichen ein Editor für die zugrunde liegende XML-Ressourcendatei.
Übersicht
Nachdem Sie Ihrer App eine XML-Grafik hinzugefügt haben, öffnet Android Studio die Grafik in den Navigationseditor Im Navigationseditor können Sie oder die zugrunde liegende XML direkt bearbeiten.
<ph type="x-smartling-placeholder"> <ph type="x-smartling-placeholder">- </ph>
- Bereich „Ziele“: Hier werden Ihr Navigationshost und alle Ziele aufgelistet. Grafikeditor hinzu.
- Grafikeditor: enthält eine visuelle Darstellung Ihrer Navigation Diagramm. Sie können zwischen der Designansicht und der Ansicht zugrunde liegende XML-Darstellung in der Ansicht Text.
- Attribute: Zeigt Attribute für das ausgewählte Element in der Navigationsdiagramm.
Klicke auf den Tab Text, um den entsprechenden XML-Code aufzurufen. Dieser sollte ähnlich aussehen. in das folgende Snippet ein:
<?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">
</navigation>
Das <navigation>
-Element ist das Stammelement eines Navigationsdiagramms. Beim Hinzufügen
und die Verbindung von Aktionen mit der Grafik
verbinden, können Sie die entsprechenden
<destination>
- und <action>
-Elemente hier als untergeordnete Elemente. Wenn Sie
verschachtelten Grafiken als untergeordnete <navigation>
-Elemente.
Reiseziele hinzufügen
Sie können ein Ziel aus einem vorhandenen Fragment oder einer vorhandenen Aktivität erstellen. Sie können auch können Sie mit dem Navigationseditor ein neues Ziel erstellen oder einen Platzhalter erstellen, und später durch ein Fragment oder eine Aktivität ersetzen.
In diesem Beispiel wird gezeigt, wie Sie ein neues Ziel erstellen. So fügen Sie ein neues mit dem Navigations-Editor erstellen, gehen Sie so vor:
- Klicken Sie im Navigationseditor auf das Symbol Neues Ziel und dann auf Neues Ziel erstellen.
- Erstellen Sie im angezeigten Dialogfeld Neue Android-Komponente Ihr Fragment. Weitere Informationen zu Fragmenten finden Sie in der Fragmentübersicht.
Sie sehen nun, dass Android Studio diese Ziel hinzu.
Abbildung 2 zeigt ein Beispiel für ein Ziel und ein Platzhalterziel.
<ph type="x-smartling-placeholder">Weitere Möglichkeiten zum Hinzufügen von Zielen zur Navigationsgrafik finden Sie unter Zusätzliche Ziele.
Ziel aus einem vorhandenen Fragment oder einer vorhandenen Aktivität erstellen
Wenn Sie im Navigationseditor bereits einen Zieltyp haben, den Sie die Sie Ihrer Navigationsgrafik hinzufügen möchten, klicken Sie auf Neues Ziel .
Klicken Sie dann im Drop-down-Menü auf das entsprechende Ziel. Sie können sehen Sie jetzt in der Designansicht eine Vorschau des Ziels in der Ansicht Text des Navigationsdiagramms auf die entsprechende XML-Datei verweisen.
Neues Fragmentziel erstellen
So fügen Sie mit dem Navigationseditor einen neuen Zieltyp hinzu:
Klicken Sie im Navigationseditor auf das Symbol Neues Ziel .
Klicken Sie dann auf Neues Ziel erstellen.
Erstellen Sie im angezeigten Dialogfeld Neue Android-Komponente Ihr Fragment.
Sie sehen nun, dass Android Studio diese Ziel hinzu.
Abbildung 3 zeigt ein Beispiel für ein Ziel und ein Platzhalterziel.
<ph type="x-smartling-placeholder">Anatomie eines Ziels
Klicken Sie auf ein Ziel, um es auszuwählen. Beachten Sie die folgenden Attribute in der Bereich Attribute:
- Das Feld Type gibt an, ob das Ziel als Fragment, Aktivität oder einer anderen benutzerdefinierten Klasse im Quellcode enthalten.
- Das Feld Label enthält den vom Nutzer lesbaren Namen des Ziels. Dieses
kann in der Benutzeroberfläche angezeigt werden, z. B. wenn Sie den
NavGraph
verbinden. mithilfe vonsetupWithNavController()
zuToolbar
. Verwenden Sie daher Ressourcenstrings für diesen Wert. - Das Feld ID enthält die Ziel-ID, die für den Verweis auf die Ziel im Code ein.
- Das Drop-down-Menü Kurs enthält den Namen der Klasse, die verknüpft ist mit das Ziel. Klicken Sie auf dieses Drop-down-Menü, um den verknüpften Kurs in einen anderen Zieltyp haben.
Klicken Sie auf den Tab Text, um die XML-Ansicht der Navigationsgrafik aufzurufen. Die XML-Datei
enthält dieselben Attribute id
, name
, label
und layout
für die
Ziel, wie im folgenden Snippet:
<?xml version="1.0" encoding="utf-8"?> <navigation xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" app:startDestination="@id/blankFragment"> <fragment android:id="@+id/blankFragment" android:name="com.example.cashdog.cashdog.BlankFragment" android:label="@string/label_blank" tools:layout="@layout/fragment_blank" /> </navigation>
NavHostFragment
Sie können auch den Layout-Editor verwenden, um einem NavHostFragment
-Element
der Aktivität ausführen. Gehen Sie dazu so vor:
- Doppelklicken Sie in Ihrer Liste der Projektdateien auf die Layout-XML-Datei Ihrer Aktivität. -Datei, um sie im Layout-Editor zu öffnen.
- Wählen Sie im Bereich Palette die Kategorie Container aus. Suchen Sie alternativ nach "NavHostFragment".
- Ziehen Sie die Ansicht „
NavHostFragment
“ auf Ihre Aktivität. - Das Dialogfeld Navigationsgrafiken wird angezeigt. Wählen Sie hier die
entsprechenden Navigationsdiagramm, das mit dieser
NavHostFragment
verknüpft werden soll, und Klicken Sie dann auf OK.
Ziele verbinden
Eine Aktion ist eine logische Verbindung zwischen Zielen. Aktionen sind werden im Navigationsdiagramm als Pfeile dargestellt. Aktionen verbinden in der Regel Ziel zu einem anderen Ziel. Sie können aber auch globale Aktionen erstellen, können Sie von überall in Ihrer App zu einem bestimmten Ziel gelangen.
Mit Aktionen stellen Sie die verschiedenen Pfade dar, die Nutzer nehmen können. über Ihre App. Für die Navigation zu den Zielen müssen Sie den Code für die Navigation zu schreiben.
Mit dem Navigationseditor können Sie zwei Ziele verbinden, indem Sie die Folgendes:
Halten Sie auf dem Tab Design den Mauszeiger über die rechte Seite des Ziel, von dem aus die Nutzer navigieren sollen. Über dem Bild erscheint ein Kreis. wie in Abbildung 4 dargestellt.
<ph type="x-smartling-placeholder">Bewegen Sie den Cursor über das Ziel, zu dem Nutzer navigieren sollen, und Veröffentlichung. Die resultierende Linie zwischen den beiden Zielen repräsentiert eine wie in Abbildung 5 dargestellt.
<ph type="x-smartling-placeholder">Klicken Sie auf den Pfeil, um die Aktion zu markieren. Die folgenden Attribute erscheinen in im Bereich Attribute:
- Das Feld Typ enthält „Aktion“.
- Das Feld ID enthält die ID für die Aktion.
- Das Feld Destination (Ziel) enthält die ID für das Zielfragment. oder Aktivitäten.
Klicken Sie auf den Tab Text, um zur XML-Ansicht zu wechseln. Ein Aktionselement ist jetzt die dem Quellziel hinzugefügt wurden. Die Aktion hat eine ID und ein Ziel das die ID des nächsten Ziels enthält, wie in den folgendes Beispiel:
<?xml version="1.0" encoding="utf-8"?> <navigation xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" app:startDestination="@id/blankFragment"> <fragment android:id="@+id/blankFragment" android:name="com.example.cashdog.cashdog.BlankFragment" android:label="@string/label_blank" tools:layout="@layout/fragment_blank" > <action android:id="@+id/action_blankFragment_to_blankFragment2" app:destination="@id/blankFragment2" /> </fragment> <fragment android:id="@+id/blankFragment2" android:name="com.example.cashdog.cashdog.BlankFragment2" android:label="@string/label_blank_2" tools:layout="@layout/fragment_blank_fragment2" /> </navigation>
Im Navigationsdiagramm werden Aktionen durch <action>
-Elemente dargestellt. Bei
verfügt eine Aktion über ihre eigene ID und die ID des Ziels, an das ein
die Nutzenden
durchgeführt werden sollen.
Platzhalterziele
Sie können Platzhalter verwenden, um nicht implementierte Ziele darzustellen. A dient als visuelle Darstellung eines Ziels. Im Navigationseditor verwenden, können Sie Platzhalter Ziel.