I pulsanti sono componenti fondamentali che consentono all'utente di attivare un'azione definita. Esistono cinque tipi di pulsanti. Questa tabella descrive l'aspetto di ciascuno dei cinque tipi di pulsanti, nonché dove dovresti utilizzarli:
| Tipo | Aspetto | Finalità |
|---|---|---|
| Pieno | Sfondo pieno con testo a contrasto. | Pulsanti ad alta enfasi. Sono destinati alle azioni principali di un' applicazione, come "Invia" e "Salva". L'effetto ombra evidenzia l'importanza del pulsante. |
| Pieno tonale | Il colore di sfondo varia in base alla superficie. | Anche per azioni principali o significative. I pulsanti pieni tonali forniscono un peso visivo maggiore e sono adatti a funzioni come "Aggiungi al carrello" e "Accedi". |
| Elevata | Si distingue per l'ombra. | Ha uno scopo simile ai pulsanti tonali. Aumenta l'elevazione per rendere il pulsante ancora più visibile. |
| Con contorno | Presenta un bordo senza riempimento. | Pulsanti a media enfasi, contenenti azioni importanti ma non principali. Si abbinano bene ad altri pulsanti per indicare azioni alternative, secondarie come "Annulla" o "Indietro." |
| Testo | Visualizza il testo senza sfondo o bordo. | Pulsanti a bassa enfasi, ideali per azioni meno critiche come link di navigazione o funzioni secondarie come "Scopri di più" o "Visualizza dettagli". |
Questa immagine mostra i cinque tipi di pulsanti in Material Design:
Piattaforma API
onClick- La funzione che il sistema chiama quando l'utente preme il pulsante.
enabled- Quando
false, questo parametro fa in modo che il pulsante appaia non disponibile e inattivo. colors- Un'istanza di
ButtonColorsche determina i colori utilizzati nel pulsante. contentPadding- Il padding all'interno del pulsante.
Pulsante con riempimento
Il componente del pulsante con riempimento utilizza il componibile Button di base. Per impostazione predefinita, viene riempito con un colore pieno. Lo snippet mostra come implementare il componente:
@Composable fun FilledButtonExample(onClick: () -> Unit) { Button(onClick = { onClick() }) { Text("Filled") } }
Questa implementazione viene visualizzata come segue:
Pulsante pieno tonale
Il componente del pulsante pieno tonale utilizza il FilledTonalButton componibile.
Per impostazione predefinita, viene riempito con un colore tonale.
Lo snippet mostra come implementare il componente:
@Composable fun FilledTonalButtonExample(onClick: () -> Unit) { FilledTonalButton(onClick = { onClick() }) { Text("Tonal") } }
Questa implementazione viene visualizzata come segue:
Pulsante con contorni
Il componente del pulsante con contorni utilizza il OutlinedButton componibile. Per impostazione predefinita, viene visualizzato con un contorno.
Lo snippet mostra come implementare il componente:
@Composable fun OutlinedButtonExample(onClick: () -> Unit) { OutlinedButton(onClick = { onClick() }) { Text("Outlined") } }
Questa implementazione viene visualizzata come segue:
Pulsante sollevato
Il componente del pulsante sollevato utilizza il ElevatedButton componibile. Per impostazione predefinita, ha un'ombra che rappresenta l'effetto di elevazione. È un pulsante con riempimento che include un'ombra.
Lo snippet mostra come implementare il componente:
@Composable fun ElevatedButtonExample(onClick: () -> Unit) { ElevatedButton(onClick = { onClick() }) { Text("Elevated") } }
Questa implementazione viene visualizzata come segue:
Pulsante Testo
Il componente del pulsante di testo utilizza il TextButton componibile. Viene visualizzato solo come testo fino a quando non viene premuto. Per impostazione predefinita, non ha un riempimento o un contorno pieno.
Lo snippet mostra come implementare il componente:
@Composable fun TextButtonExample(onClick: () -> Unit) { TextButton( onClick = { onClick() } ) { Text("Text Button") } }
Questa implementazione viene visualizzata come segue:
Risorse aggiuntive
- Pulsante di azione sovrapposto (FAB, Floating Action Button)
- Panoramica dei pulsanti di Material Design 3