Saltearse al contenido

ExtendedFloatingActionButton

MaterialMaterial 3
Imagen del componente ExtendedFloatingActionButton - MaterialImagen del componente ExtendedFloatingActionButton - Material 3

Los ExtendedFloatingActionButton representan la acción más importante de la pantalla. Como norma general están situados en la parte inferior derecha. A diferencia de los otros FloatingActionButtons este componente está destinado a tener un texto además de un icono.

Implementación

Definición del componente

Terminal window
@Composable
fun ExtendedFloatingActionButton(
text: @Composable () -> Unit,
onClick: () -> Unit,
modifier: Modifier = Modifier,
icon: @Composable (() -> Unit)? = null,
interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
shape: Shape = MaterialTheme.shapes.small.copy(CornerSize(percent = 50)),
backgroundColor: Color = MaterialTheme.colors.secondary,
contentColor: Color = contentColorFor(backgroundColor),
elevation: FloatingActionButtonElevation = FloatingActionButtonDefaults.elevation()
)
AtributoDescripción
textComposable que mostrará al lado izquierdo del botón (En teoría debería ser un Text pero vale cualquiera).
onClickFunción lambda que se ejecutará cuando el usuario pulse el botón.
modifierModificador que implementará el composable.
iconComposable que mostrará al lado derecho del botón (En teoría debería ser un Icon pero vale cualquiera).
interactionSourceRepresenta 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.
shapeDefine la forma del FloatingActionButton y su sombra.
backgroundColorEl color del fondo del componente.
contentColorColor del contenido.
elevationPermite modificar la elevación del componente en sus distintos estados con el objeto FloatingActionButtonElevation.

Ejemplos

Imagen del componente ExtendedFloatingActionButton - Material
Terminal window
@Composable
fun ExtendedFloatingActionButtonExample() {
ExtendedFloatingActionButton(onClick = { print("Hello") },
text = { Text(text = "Extended FAB") },
icon = { Icon(Icons.Filled.Favorite, "Floating action button.") })
}