es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El color del borde de TextFormField no está funcionando.

Estoy intentando añadir color en el borde, pero no está funcionando, por favor revise dónde estoy haciendo mal.

Aquí está mi código:

passwordtext() {
    return Container(
        width: MediaQuery.of(context).size.width * 0.9,
        child: Focus(
          focusNode: myFocusNode,
          child: TextFormField(
            decoration: InputDecoration(
                focusedBorder: OutlineInputBorder(
                    borderRadius: BorderRadius.all(Radius.circular(10.0)),
                    borderSide: BorderSide(color: HexColor("#d8d6de"))),
                border: OutlineInputBorder(
                    borderRadius: BorderRadius.all(Radius.circular(10.0)),
                    borderSide: BorderSide(color: Colors.red)),

      ),
    ));
}

Cuando toco en el campo el color del borde cambia, lo que quiero es que también cambie sin tener que tocarlo.

Imagen 1: https://i.stack.imgur.com/3VhU0.png

Imagen 2: https://i.stack.imgur.com/NHS6k.png

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el color del borde está cambiando cuando el campo está en foco, pero el comportamiento deseado es que el color del borde siempre aparezca. Para lograrlo, puedes añadir un color de borde separado a la propiedad enabledBorder de InputDecoration. Puedes probar modificando tu código como sigue:

    passwordtext() {
      return Container(
          width: MediaQuery.of(context).size.width * 0.9,
          child: Focus(
            focusNode: myFocusNode,
            child: TextFormField(
              decoration: InputDecoration(
                  focusedBorder: OutlineInputBorder(
                      borderRadius: BorderRadius.all(Radius.circular(10.0)),
                      borderSide: BorderSide(color: HexColor (" #d8d6de "))),
                  enabledBorder: OutlineInputBorder(
                      borderRadius: BorderRadius.all(Radius.circular(10.0)),
                      borderSide: BorderSide(color: Colors.red)),
                  ),
            ),
          ),
      );
    }
    

    Con esta modificación, el color del borde debería aparecer aunque el campo no esté en foco.

Comments are closed.