Typ NavController
basiert auf mindestens einem
Navigator
auszuführende Objekte
mit der Navigation. Standardmäßig unterstützt NavController
das Behalten des
indem Sie mithilfe der
ActivityNavigator
und ihre verschachtelten
ActivityNavigator.Destination
.
Für die Navigation zu anderen Arten von Zielen: eine oder mehrere zusätzliche Navigator
Objekte müssen zum NavController
hinzugefügt werden. Wenn Sie beispielsweise Fragmente
als Ziele, die
NavHostFragment
fügt automatisch den Parameter
FragmentNavigator
-Klasse zu NavController
hinzu.
Um einem NavController
-Element ein neues Navigator
-Objekt hinzuzufügen, verwenden Sie die Methode
getNavigatorProvider()
, gefolgt von der
addNavigator()
.
Der folgende Code zeigt ein Beispiel für das Hinzufügen eines CustomNavigator
-Objekts zu einem
NavController
:
Kotlin
val customNavigator = CustomNavigator() navController.navigatorProvider += customNavigator
Java
CustomNavigator customNavigator = new CustomNavigator(); navController.getNavigatorProvider().addNavigator(customNavigator);
Die meisten Navigator
-Klassen haben eine verschachtelte Zielunterklasse. Diese abgeleitete Klasse kann
kann verwendet werden, um zusätzliche Attribute anzugeben, die für Ihr Ziel eindeutig sind. Weitere Informationen
Informationen zu abgeleiteten Zielklassen finden Sie in der Referenzdokumentation zu
Entsprechende(s) Navigator
.
Weitere Informationen
Weitere Informationen zur Navigation finden Sie zusätzliche Ressourcen.
Produktproben
Codelabs
- <ph type="x-smartling-placeholder"></ph> Codelab zu Jetpack Navigation
Videos
- <ph type="x-smartling-placeholder"></ph> Android Jetpack: Navigation über die Benutzeroberfläche mit einem Navigations-Controller verwalten