Button
| Material | Material 3 |
|---|---|
![]() | ![]() |
Los Button le dan al usuario la posibilidad de activar/ejecutar acciones predefinidas. Este se trata del botón más sencillo de todos y el que se utiliza por defecto.
Implementación
Definición del componente
@Composablefun Button( onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, interactionSource: MutableInteractionSource = remember { MutableInteractionSource() }, elevation: ButtonElevation? = ButtonDefaults.elevation(), shape: Shape = MaterialTheme.shapes.small, border: BorderStroke? = null, colors: ButtonColors = ButtonDefaults.buttonColors(), contentPadding: PaddingValues = ButtonDefaults.ContentPadding, content: @Composable RowScope.() -> Unit)| Atributo | Descripción |
|---|---|
| onClick | Función lambda que se ejecutará cuando el usuario pulse el botón. |
| modifier | Modificador que implementará el composable. |
| enabled | Habilita o deshabilita el botón. |
| interactionSource | Representa un stream de interacciones del botón lo que nos permite modificar su diseño o comportamiento. Por ejemplo que mientras el botón esté pulsado, este encoja. |
| elevation | Permite modificar la elevación del componente en sus distintos estados con el objeto ButtonElevation. |
| shape | Define la forma del Button y su sombra. |
| border | Borde para el Button. |
| colors | Nos permite modificar el color del fondo del Button y el del contenido. |
| contentPadding | The spacing values to apply internally between the container and the content |
| content | Contenido a mostrar dentro del Button. |
@Composablefun Button( onClick: () -> Unit, modifier: Modifier = Modifier, enabled: Boolean = true, shape: Shape = ButtonDefaults.shape, colors: ButtonColors = ButtonDefaults.buttonColors(), elevation: ButtonElevation? = ButtonDefaults.buttonElevation(), border: BorderStroke? = null, contentPadding: PaddingValues = ButtonDefaults.ContentPadding, interactionSource: MutableInteractionSource = remember { MutableInteractionSource() }, content: @Composable RowScope.() -> Unit)| Atributo | Descripción |
|---|---|
| onClick | Función lambda que se ejecutará cuando el usuario pulse el botón. |
| modifier | Modificador que implementará el composable. |
| enabled | Habilita o deshabilita el botón. |
| shape | Define la forma del Button y su sombra. |
| colors | Nos permite modificar el color del fondo del Button y el del contenido. |
| elevation | Permite modificar la elevación del componente en sus distintos estados con el objeto ButtonElevation. |
| border | Borde para el Button. |
| contentPadding | The spacing values to apply internally between the container and the content |
| interactionSource | Representa un stream de interacciones del botón lo que nos permite modificar su diseño o comportamiento. Por ejemplo que mientras el botón esté pulsado, este encoja. |
| content | Contenido a mostrar dentro del Button. |
Ejemplos

@Composablefun ButtonExample() { Button(onClick = { print("Hello") }) { Text(text = "Click me") }}
@Composablefun ButtonExample() { Button(onClick = { print("Hello") }) { Text(text = "Click me") }}