Saltearse al contenido

TogieBagde

Este widget, implementado como StatelessWidget, muestra una etiqueta (badge) personalizable que puede incluir texto, iconos al inicio y al final, y ofrece opciones de personalización en colores, borde y espaciado.

Importación

import 'package:togie/widgets/general/togie_badge.dart';

Constructor:

const TogieBagde({
super.key,
this.text = "",
this.icon,
this.iconSize = 13,
this.trailingIcon,
this.backgroundColor,
this.foregroundColor,
this.borderColor,
this.iconColor,
this.trailingIconColor,
this.width,
this.onTap,
this.onLongPress,
this.padding = const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
});

Parámetro del constructor:

ParámetroTipoDescripción
textStringTexto que se mostrará en la etiqueta.
iconIconData?Icono opcional que se muestra al inicio de la etiqueta.
iconSizedoubleTamaño del icono.
trailingIconIconData?Icono opcional que se muestra al final de la etiqueta.
backgroundColorColor?Color de fondo de la etiqueta.
foregroundColorColor?Color del texto de la etiqueta.
borderColorColor?Color del borde de la etiqueta.
iconColorColor?Color del icono inicial.
trailingIconColorColor?Color del icono final.
widthdouble?Ancho de la etiqueta.
onTapvoid Function()?Callback que se ejecuta al pulsar la etiqueta.
onLongPressvoid Function()?Callback que se ejecuta al mantener pulsada la etiqueta.
paddingEdgeInsetsGeometry?Espaciado interno de la etiqueta.

Ejemplo de uso:

TogieBagde(
text: "Ejemplo",
icon: Icons.star,
trailingIcon: Icons.close,
backgroundColor: Colors.blue,
foregroundColor: Colors.white,
borderColor: Colors.blueAccent,
iconColor: Colors.yellow,
trailingIconColor: Colors.red,
width: 150,
onTap: () {
// Lógica al pulsar la etiqueta
},
onLongPress: () {
// Lógica al mantener pulsada la etiqueta
},
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
)

TogieBagde