Saltearse al contenido

BadgedBox

MaterialMaterial 3
Imagen del componente BadgedBoxImagen del componente BadgedBox

BadgedBox es el componente que nos permitirá gestionar de una forma sencilla la clásica vista de notificaciones. Su implementación es muy fácil y personalizable por lo que podemos usarlo tanto para avisar al usuario de alguna novedad o como por ejemplo para mostrar el clásico carrito de compra con el número de productos.

Implementación

Definición del componente

Terminal window
@Composable
fun BadgeBox(
modifier: Modifier = Modifier,
backgroundColor: Color = MaterialTheme.colors.error,
contentColor: Color = contentColorFor(backgroundColor),
badgeContent: @Composable (RowScope.() -> Unit)? = null,
content: @Composable BoxScope.() -> Unit,
)
AtributoDescripción
modifierModificador que implementará el composable (Opcional).
backgroundColorEl color del fondo del componente.
contentColorColor del contenido.
badgeContentEl contenido a mostrar en el badge.
contentContenido que tendrá el badge en la parte superior.

Ejemplos

Imagen del componente BadgedBox
Terminal window
@OptIn(ExperimentalMaterialApi::class)
@Composable
fun BadgedBoxExample() {
Box(Modifier.size(100.dp), contentAlignment = Alignment.Center) {
BadgeBox(content = {
Icon(
Icons.Filled.Favorite, contentDescription = "Favorite"
)
}, badgeContent = {
Text("8")
})
}
}