Guida alla migrazione
- Guida alla migrazione da Navigation 2 a Navigation 3: guida passo passo per migrare un'applicazione Android da Navigation 2 a Navigation 3, che copre aggiornamenti delle dipendenze, modifiche delle route, gestione dello stato e sostituzioni dei componenti UI.
Requisiti
- Guida: esegui la migrazione alla navigazione con controllo del tipo in Compose: guida passo passo per eseguire la migrazione di un'applicazione Android dalla navigazione basata su stringhe alla navigazione con controllo del tipo in Jetpack Compose utilizzando Jetpack Navigation 2.
Documentazione per gli sviluppatori
- *Navigazione 3. Consulta la documentazione per saperne di più su nozioni di base, salvataggio e gestione dello stato di navigazione, modularizzazione del codice di navigazione, creazione di layout personalizzati utilizzando Scene, animazione tra destinazioni o applicazione di logica o wrapper alle destinazioni.
Ricette
Esempi di codice che mostrano pattern comuni.
Utilizzo di base dell'API
- Di base: mostra l'utilizzo più semplice dell'API.
- Back stack salvabile: mostra l'utilizzo di base dell'API con una back stack persistente.
- DSL del fornitore di voci: mostra l'utilizzo di base dell'API utilizzando la DSL entryProvider.
UI comune
- UI comune: mostra come implementare un pattern di UI di navigazione comune con una barra di navigazione in basso e più back stack, in cui ogni scheda della barra di navigazione ha una propria cronologia di navigazione.
Link diretti
- Di base: mostra come analizzare un URL di link diretto da un intent Android in una chiave di navigazione.
- Avanzato: mostra come gestire i deep link con uno stack indietro sintetico e il comportamento corretto di navigazione "Su".
Scene
Utilizzare le scene integrate
- Dialogo: mostra come creare una finestra di dialogo.
Creare scene personalizzate
- Foglio inferiore: mostra come creare una destinazione Foglio inferiore.
- Scena elenco-dettagli: mostra come implementare layout elenco-dettagli adattivi utilizzando l'API Navigation 3 Scenes.
- Scena a due riquadri: mostra come implementare layout adattivi a due riquadri utilizzando l'API Navigation 3 Scenes.
Materiale adattivo
- Elenco-dettagli Material: mostra come implementare un layout elenco-dettagli adattivo utilizzando Material 3 Adaptive.
- Riquadro di supporto Material: mostra come implementare un layout del riquadro di supporto adattivo utilizzando Material 3 Adaptive.
Animazioni
- Animazioni: mostra come sostituire le animazioni predefinite per tutte le destinazioni e per una singola destinazione.
Comportamento comune dello stack di attività
- Più back stack: mostra come creare più route di primo livello, ognuna con il proprio back stack. I percorsi di primo livello vengono visualizzati in una barra di navigazione che consente agli utenti di passare da uno all'altro. Lo stato viene mantenuto per ogni route di primo livello e lo stato di navigazione persiste alle modifiche di configurazione e all'interruzione del processo.
Navigazione condizionale
- Navigazione condizionale: passa a un flusso di navigazione diverso quando una condizione è soddisfatta. Ad esempio, per l'autenticazione o l'onboarding degli utenti.
Architettura
- Codice di navigazione modulare (Hilt): mostra come separare il codice di navigazione in moduli separati utilizzando Hilt o Dagger per l'inserimento delle dipendenze.
- Codice di navigazione modulare (Koin): mostra come separare il codice di navigazione in moduli separati utilizzando Koin per l'inserimento delle dipendenze.
Utilizzo di ViewModel
Passaggio di argomenti di navigazione
- ViewModel di base: gli argomenti di navigazione vengono passati a un
ViewModelcostruito utilizzandoviewModel()
Restituzione dei risultati
- Restituzione dei risultati come eventi: restituzione dei risultati come eventi per
i contenuti in un altro
NavEntry - Restituzione dei risultati come stato: restituzione dei risultati come stato archiviato in un
CompositionLocal