Competenze Android
Visualizza su GitHubJetpack Navigation 3
android skills add navigation-3Navigation 3 è una nuova libreria di navigazione progettata per funzionare con Compose. Con Navigation 3, hai il pieno controllo del back stack e puoi spostarti verso e dalle 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 navigato
- Un'interfaccia utente che si aggiorna automaticamente con le modifiche dello stack indietro (incluse le animazioni)
- Un ambito per gli elementi del 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 e di passare facilmente da un layout all'altro
- Un meccanismo per consentire ai contenuti di comunicare con il layout principale (metadati)
A livello generale, puoi implementare Navigation 3 nei seguenti modi:
- Definisci i contenuti a cui gli utenti possono navigare nella tua app, ognuno con una chiave univoca, e aggiungi una funzione per risolvere la chiave nei contenuti. Consulta Risolvere le chiavi nei contenuti.
- Crea un back stack in cui le chiavi vengono inserite e rimosse man mano che gli utenti navigano nella tua app. Consulta 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 visualizzare i contenuti pertinenti. Consulta Visualizzare lo stack indietro. - Modifica
NavDisplay's strategie di scena in base alle esigenze per supportare layout adattivi e piattaforme diverse. - Supporta i link diretti per navigare 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 dal 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 dell'API di Navigation 3 nel post del blog di annuncio.
Esempi di codice
Il repository delle ricette contiene esempi di come utilizzare i blocchi predefiniti di Navigation 3 per risolvere le sfide di navigazione comuni.