I pulsanti sono componenti fondamentali che consentono all'utente di attivare un'azione definita. Esistono cinque tipi di pulsanti. La seguente tabella descrive l'aspetto di ciascuno dei cinque tipi di pulsanti, nonché dove devi utilizzarli.
Tipo |
Aspetto |
Finalità |
---|---|---|
Pieno |
Sfondo a tinta unita con testo in contrasto. |
Pulsanti con enfasi elevata. Si tratta delle azioni principali in una richiesta, ad esempio "invia" e "salva". L'effetto ombre evidenzia l'importanza del pulsante. |
Tonale pieno |
Il colore di sfondo varia in base alla superficie. |
Anche per le azioni principali o significative. I pulsanti pieni offrono ulteriori funzioni visive per il peso e l'ade, come "aggiungi al carrello" e "Accedi". |
Alta |
Si distingue per un'ombra. |
Offre un ruolo simile ai pulsanti tonali. Aumenta l'elevazione per aumentare la visibilità del pulsante. |
Con contorno |
Presenta un bordo senza riempimento. |
Pulsanti di enfasi media che contengono azioni importanti ma non principali. Si associano bene ad altri pulsanti per indicare azioni secondarie alternative come "Annulla" o "Indietro". |
Testo |
Mostra il testo senza sfondo o bordo. |
Pulsanti con enfasi bassa, ideali per azioni meno critiche, come link di navigazione o funzioni secondarie come "Scopri di più" o "Visualizza dettagli". |
La seguente immagine mostra i cinque tipi di pulsanti in Material Design.
Piattaforma API
onClick
: la funzione chiamata quando l'utente preme il pulsante.enabled
: se il valore è false, questo parametro indica che il pulsante non è disponibile e non è attivo.colors
: un'istanza diButtonColors
che determina i colori utilizzati nel pulsante.contentPadding
: la spaziatura interna all'interno del pulsante.
Pulsante Riempito
Il componente Pulsante compilato utilizza l'elemento componibile di base Button
. Per impostazione predefinita è
riempito con un colore a tinta unita. Lo snippet seguente mostra come implementare il componente:
@Composable fun FilledButtonExample(onClick: () -> Unit) { Button(onClick = { onClick() }) { Text("Filled") } }
Questa implementazione si presenta come segue:
Pulsante tonale pieno
Il componente Pulsante tonale pieno utilizza il componibile FilledTonalButton
.
Per impostazione predefinita, è riempito con un colore tonale.
Il seguente snippet mostra come implementare il componente:
@Composable fun FilledTonalButtonExample(onClick: () -> Unit) { FilledTonalButton(onClick = { onClick() }) { Text("Tonal") } }
Questa implementazione si presenta come segue:
Pulsante con contorno
Il componente del pulsante delineato utilizza il componibile OutlinedButton
. Per impostazione predefinita, viene visualizzato con un contorno.
Il seguente snippet mostra come implementare il componente:
@Composable fun OutlinedButtonExample(onClick: () -> Unit) { OutlinedButton(onClick = { onClick() }) { Text("Outlined") } }
Questa implementazione si presenta come segue:
Pulsante in rilievo
Il componente Pulsante in alto utilizza il componibile ElevatedButton
. Ha un'ombra che rappresenta l'effetto elevazione per impostazione predefinita. Tieni presente che si tratta essenzialmente di
un pulsante con contorni e un'ombra.
Il seguente snippet mostra come implementare il componente:
@Composable fun ElevatedButtonExample(onClick: () -> Unit) { ElevatedButton(onClick = { onClick() }) { Text("Elevated") } }
Questa implementazione si presenta come segue:
Pulsante Testo
Il componente Pulsante di testo utilizza il componibile TextButton
. Fino a quando non viene premuto,
viene visualizzato solo come testo. Non ha un riempimento o un contorno continuo per impostazione predefinita.
Il seguente snippet mostra come implementare il componente:
@Composable fun TextButtonExample(onClick: () -> Unit) { TextButton( onClick = { onClick() } ) { Text("Text Button") } }
Questa implementazione si presenta come segue: