Constructor
Esta firma corresponde al código fuente, incluyendo nulabilidad y defaults; las condiciones y el comportamiento se explican debajo.Propiedades
“Requerido” significa que debes pasar el argumento, incluso cuando su tipo admitenull. Los valores null de color suelen delegar al tema; consulta las notas para el rol efectivo.
Ejemplo
Este archivo define una función que devuelve el widget. Llámala desdebuild con tus datos/callbacks, y conserva el estado y los recursos en su dueño. No ejecuta callbacks ficticios.
Comportamiento y límites
- controller y focusNode externos los libera su dueño; el widget crea y libera los recursos internos cuando no se suministran.
- El error aparece debajo del control y aumenta la altura total. height define sólo la superficie de entrada.
- obscureText añade un botón de mostrar/ocultar contraseña. Mantén maxLines: 1 para ese caso.
- Para varias líneas configura minLines, maxLines y height; maxLines: null permite más líneas dentro de la altura disponible.
- Los cambios del controller llaman setValue y pueden invocar onChanged programáticamente. No garantiza las mismas señales de Form.onChanged/onUserInteraction que TextFormField.
- No expone enabled, onSaved ni initialValue como parámetros. readOnly impide editar, y AbsorbPointer puede bloquear interacción durante guardar.
- Si sustituyes un FocusNode externo durante la vida del campo, el código actual no actualiza su nodo interno en didUpdateWidget. Conserva su identidad o recrea el campo.