Saltearse al contenido

TogieTextField

Este widget muestra un campo de texto altamente configurable. Permite definir el tipo de teclado, controlar la edición, manejar errores y utilizar un date picker en caso de campos de fecha. Además, ofrece opciones para personalizar colores, estilos y comportamiento según se requiera.

Importación

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

Constructor:

const TogieTextField({
super.key,
this.label = "",
this.controller,
this.keyboardType = TextInputType.text,
this.onEditingComplete,
this.onChange,
this.focusNode,
this.enabledColor,
this.disabledColor,
this.backgroundColor,
this.maxLines = 1,
this.textAlignVertical,
this.alignLabelWithHint,
this.readOnly = false,
this.enabled = true,
this.textCapitalization = TextCapitalization.none,
this.errorMessage = "",
this.datePickerMode = TogieDatePickerMode.dateTime,
this.onDatePicker,
this.onDatePickerRange,
this.initialDate,
this.startDate,
this.endDate,
this.minDate,
this.maxDate,
this.isFilter = false,
this.autofillHints,
this.inputFormatters,
});

Parámetro del constructor:

ParámetroTipoDescripción
labelStringTexto que se muestra como etiqueta del campo.
controllerTextEditingController?Controlador para manejar el contenido del campo de texto.
keyboardTypeTextInputTypeTipo de teclado a utilizar (por ejemplo, texto, número, fecha, etc.).
onEditingCompletevoid Function()?Callback que se ejecuta cuando se completa la edición.
onChangevoid Function(String)?Callback que se ejecuta al cambiar el texto del campo.
focusNodeFocusNode?Nodo de enfoque para gestionar el foco del campo.
enabledColorColor?Color del texto cuando el campo está habilitado.
disabledColorColor?Color del texto cuando el campo está deshabilitado.
backgroundColorColor?Color de fondo del campo de texto.
maxLinesint?Número máximo de líneas que se pueden mostrar en el campo.
textAlignVerticalTextAlignVertical?Alineación vertical del texto dentro del campo.
alignLabelWithHintbool?Determina si la etiqueta se alinea con la pista de texto.
readOnlyboolIndica si el campo es de solo lectura.
enabledboolDetermina si el campo está habilitado para la entrada.
textCapitalizationTextCapitalizationControla la capitalización del texto ingresado.
errorMessageStringMensaje de error a mostrar si ocurre alguna validación.
datePickerModeTogieDatePickerModeModo del date picker (por ejemplo, fecha, hora o fecha y hora).
onDatePickervoid Function(DateTime?)?Callback para manejar la selección de una fecha.
onDatePickerRangevoid Function(DateTimeRange?)?Callback para manejar la selección de un rango de fechas.
initialDateDateTime?Fecha inicial para el date picker.
startDateDateTime?Fecha de inicio para el date picker en modo rango.
endDateDateTime?Fecha final para el date picker en modo rango.
minDateDateTime?Fecha mínima permitida en el date picker.
maxDateDateTime?Fecha máxima permitida en el date picker.
isFilterboolDetermina si el campo actúa como un filtro, volviéndose de solo lectura.
autofillHintsIterable<String>?Sugerencias de autocompletado para el campo.
inputFormattersList<TextInputFormatter>?Lista de formateadores para controlar el formato del texto ingresado.

Ejemplo de uso:

TogieTextField(
label: "Ingrese su fecha de nacimiento",
keyboardType: TextInputType.datetime,
onDatePicker: (selectedDate) {
// Lógica para manejar la fecha seleccionada
},
controller: TextEditingController(),
backgroundColor: Colors.white,
enabledColor: Colors.black,
errorMessage: "",
)

TogieTextField