Material Design è una guida completa per il design visivo, di movimento e dell'interazione su piattaforme e dispositivi diversi. Per utilizzare Material Design nelle tue app per Android, segui le linee guida definite nella specifica di Material Design. Se la tua app utilizza Jetpack Compose, puoi utilizzare la libreria Compose Material 3. Se la tua app utilizza le visualizzazioni, puoi usare la raccolta dei componenti materiali Android.
Android offre le seguenti funzionalità per aiutarti a sviluppare app Material Design:
- Un tema dell'app Material Design per applicare uno stile a tutti i tuoi widget dell'UI
- Widget per visualizzazioni complesse, come elenchi e schede
- API per ombre e animazioni personalizzate
Widget e tema Material
Per sfruttare le funzionalità Material, ad esempio lo stile dei widget dell'interfaccia utente standard, e per snellire la definizione degli stili della tua app, applica alla tua app un tema basato su Material.
![](https://developer.android.com/static/design/material/images/MaterialDark.png?authuser=5&hl=it)
![](https://developer.android.com/static/design/material/images/MaterialLight.png?authuser=5&hl=it)
Se usi Android Studio per creare il tuo progetto Android, per impostazione predefinita verrà applicato un tema Materiale. Per scoprire come aggiornare il tema del progetto, consulta Stili e temi.
Per offrire agli utenti un'esperienza familiare, utilizza i pattern UX più comuni di Material:
- Promuovi l'azione principale della tua UI con un pulsante di azione mobile (FAB).
- Mostra il tuo brand, la navigazione, la ricerca e altre azioni utilizzando la barra delle app.
- Mostra e nascondi la navigazione dell'app con il riquadro di navigazione a scomparsa.
- Scegli tra i tanti altri componenti Material per il layout e la navigazione dell'app, ad esempio barre degli strumenti compressi, schede, una barra di navigazione inferiore e altro ancora. Per vederli tutti, consulta il catalogo di Material Components per Android.
Se possibile, utilizza le icone Material predefinite. Ad esempio, per il pulsante del menu di navigazione del riquadro di navigazione a scomparsa, usa l'icona standard "hamburger". Consulta la pagina Icone di Material Design per un elenco delle icone disponibili. Puoi anche importare le icone SVG dalla raccolta Material Icon con Vector Asset Studio di Android Studio.
Ombre e schede di elevazione
Oltre alle proprietà X e Y, le viste in Android hanno una proprietà Z. Questa proprietà rappresenta l'elevazione di una vista, che determina quanto segue:
- La dimensione dell'ombra: le visualizzazioni con valori Z più alti proiettano ombre più grandi.
- L'ordine di disegno: le visualizzazioni con valori Z più alti vengono visualizzate sopra le altre.
![](https://developer.android.com/static/images/ui/material-design/cast-shadows_2x.png?authuser=5&hl=it)
Puoi applicare l'elevazione a un layout basato su schede, che ti aiuta a mostrare informazioni importanti
all'interno delle schede con un aspetto Material. Puoi utilizzare il widget CardView
per creare schede con un'elevazione predefinita. Per maggiori informazioni, vedi
Creare un layout basato su schede.
Per informazioni sull'aggiunta dell'elevazione ad altre visualizzazioni, consulta Creare ombre e visualizzazioni clip.
Animazioni
Le API di animazione consentono di creare animazioni personalizzate per il feedback al tocco nei controlli dell'interfaccia utente, nelle modifiche allo stato della visualizzazione e nelle transizioni delle attività.
Queste API ti consentono di:
- Rispondere agli eventi di tocco nelle visualizzazioni con animazioni di feedback al tocco.
- Nascondi e mostra le visualizzazioni con animazioni a rivelamento circolare.
- Passa da un'attività all'altra con animazioni di transizione attività personalizzate.
- Crea animazioni più naturali con i moti curvi.
- Anima le modifiche in una o più proprietà di vista con le animazioni di modifica dello stato di visualizzazione.
- Mostra animazioni nei disegni dell'elenco di stati tra le modifiche dello stato della visualizzazione.
Le animazioni con feedback al tocco sono integrate in diverse visualizzazioni standard, come i pulsanti. Le API di animazione ti consentono di personalizzare queste animazioni e aggiungerle alle tue visualizzazioni personalizzate.
Per ulteriori informazioni, consulta Introduzione alle animazioni.
Drawable
Le seguenti funzionalità per i disegni ti consentono di implementare le app di Material Design:
- I disegni vettoriali sono scalabili senza perdere la definizione e sono perfetti per le icone in-app a un colore. Scopri di più sugli Drawable vettoriali.
- La colorazione disegnabile consente di definire le bitmap come maschera alfa e di colorarle con un colore in fase di runtime. Scopri come aggiungere una tinta ai disegnabili.
- L'estrazione dei colori consente di estrarre automaticamente i colori più prominenti da un'immagine bitmap. Scopri come selezionare i colori con l'API Palette.