Il tipo di NavController
si basa su uno o più
Navigator
oggetti da eseguire
durante l'operazione di navigazione. Per impostazione predefinita, NavController
consente di uscire dal
grafico di navigazione passando a un'altra attività utilizzando
ActivityNavigator
e i suoi asset nidificati
ActivityNavigator.Destination
.
Per navigare verso qualsiasi altro tipo di destinazione, uno o più Navigator
aggiuntivi
occorre aggiungere oggetti al NavController
. Ad esempio, quando utilizzi frammenti
come destinazioni,
NavHostFragment
aggiunge automaticamente
FragmentNavigator
al relativo NavController
.
Per aggiungere un nuovo oggetto Navigator
a un NavController
, utilizza la
getNavigatorProvider()
:
seguito dal metodo
addNavigator()
.
Il codice seguente mostra un esempio di aggiunta di un oggetto CustomNavigator
a un
NavController
:
Kotlin
val customNavigator = CustomNavigator() navController.navigatorProvider += customNavigator
Java
CustomNavigator customNavigator = new CustomNavigator(); navController.getNavigatorProvider().addNavigator(customNavigator);
La maggior parte delle classi Navigator
ha una sottoclasse di destinazione nidificata. Questa sottoclasse può
da utilizzare per specificare attributi aggiuntivi univoci per la destinazione. Per ulteriori informazioni
informazioni sulle sottoclassi di destinazione, consulta la documentazione di riferimento per
l'elemento Navigator
appropriato
.
Risorse aggiuntive
Per scoprire di più sulla navigazione, consulta le seguenti risorse: risorse aggiuntive.