Competenze Android
Visualizza su GitHubJetpack Navigation 3
android skills add navigation-3Navigation 3 è una libreria di navigazione progettata per funzionare con Compose. Con Navigation 3, hai il pieno controllo del back stack e puoi spostarti tra le destinazioni aggiungendo e rimuovendo elementi da un elenco. Crea un sistema di navigazione dell'app flessibile fornendo:
- Convenzioni per la modellazione di un back stack, in cui ogni voce del back stack rappresenta i contenuti a cui l'utente ha eseguito la navigazione
- Un'interfaccia utente che si aggiorna automaticamente con le modifiche del back stack (incluse le animazioni)
- Un ambito per gli elementi nel back stack, che consente di conservare lo stato mentre un elemento si trova nel back stack
- Un sistema di layout adattivo che consente di visualizzare più destinazioni contemporaneamente, consentendo di passare facilmente da un layout all'altro
- Un meccanismo che consente ai contenuti di comunicare con il layout principale (metadati)
- Comunicazione tra destinazioni per restituire risultati tra le schermate
A livello generale, implementi Navigation 3 nei seguenti modi:
- Definisci i contenuti a cui gli utenti possono accedere nella tua app, ognuno con una chiave univoca, e aggiungi una funzione per risolvere la chiave nei contenuti. Consulta Risolvere i problemi relativi alle chiavi per i contenuti.
- Crea un back stack in cui le chiavi vengono inserite e rimosse man mano che gli utenti navigano nella tua app. Vedi Creare un back stack.
- Utilizza un
NavDisplayper visualizzare il back stack della tua app. Ogni volta che lo stack indietro cambia, l'interfaccia utente viene aggiornata per mostrare i contenuti pertinenti. Vedi Visualizzare lo stack precedente. - Modifica le strategie di scena di
NavDisplayin base alle esigenze per supportare layout adattivi e piattaforme diverse. - Supporta i link diretti per passare direttamente alle destinazioni.
Puoi visualizzare il codice sorgente completo di Navigation 3 su AOSP.
Miglioramenti rispetto a Jetpack Navigation
Navigation 3 migliora l'API Jetpack Navigation originale nei seguenti modi:
- Fornisce un'integrazione più semplice con Compose
- Ti offre il pieno controllo del back stack
- Consente di creare layout in grado di leggere più di una destinazione dalla back stack contemporaneamente, consentendo loro di adattarsi alle modifiche delle dimensioni della finestra e ad altri input.
Scopri di più sui principi e sulle scelte di progettazione delle API di Navigation 3 nel post del blog dell'annuncio.
Esempi di codice
Il repository di ricette contiene esempi di come utilizzare i componenti predefiniti di Navigation 3 per risolvere problemi comuni di navigazione.