Der Typ NavController
benötigt ein oder mehrere Navigator
-Objekte, um den Navigationsvorgang auszuführen. Standardmäßig unterstützt NavController
das Verlassen des Navigationsgraphen, indem über die Klasse ActivityNavigator
und die verschachtelte Klasse ActivityNavigator.Destination
zu einer anderen Aktivität gewechselt wird.
Wenn Sie zu einem anderen Zieltyp wechseln möchten, müssen dem NavController
ein oder mehrere zusätzliche Navigator
-Objekte hinzugefügt werden. Wenn Sie beispielsweise Fragmente als Ziele verwenden, fügt NavHostFragment
der NavController
automatisch die Klasse FragmentNavigator
hinzu.
Wenn Sie einem NavController
ein neues Navigator
-Objekt hinzufügen möchten, verwenden Sie die Methode getNavigatorProvider()
und dann die Methode addNavigator()
.
Im folgenden Code wird gezeigt, wie einem NavController
ein CustomNavigator
-Objekt hinzugefügt wird:
Kotlin
val customNavigator = CustomNavigator() navController.navigatorProvider += customNavigator
Java
CustomNavigator customNavigator = new CustomNavigator(); navController.getNavigatorProvider().addNavigator(customNavigator);
Die meisten Navigator
-Klassen haben eine verschachtelte Zielunterklasse. Mit dieser Unterklasse können Sie zusätzliche Attribute angeben, die für Ihr Ziel einzigartig sind. Weitere Informationen zu Zielunterklassen finden Sie in der Referenzdokumentation für die entsprechende Navigator
-Klasse.
Weitere Informationen
Weitere Informationen zur Navigation finden Sie in den folgenden zusätzlichen Ressourcen.