Estoy usando Flutter y me gustaría agregar un borde a un widget (en este caso, un widget de texto).
Intenté TextStyle y Text, pero no vi cómo agregar un borde.
fuente
Estoy usando Flutter y me gustaría agregar un borde a un widget (en este caso, un widget de texto).
Intenté TextStyle y Text, pero no vi cómo agregar un borde.
Puede agregar el TextFieldas childa un Containerque tiene una propiedad BoxDecorationwith border:
new Container(
  margin: const EdgeInsets.all(15.0),
  padding: const EdgeInsets.all(3.0),
  decoration: BoxDecoration(
    border: Border.all(color: Colors.blueAccent)
  ),
  child: Text("My Awesome Border"),
)
                Aquí hay una respuesta ampliada. A DecoratedBoxes lo que necesita para agregar un borde, pero estoy usando un Containerpara la comodidad de agregar margen y relleno.
Aquí está la configuración general.
Widget myWidget() {
  return Container(
    margin: const EdgeInsets.all(30.0),
    padding: const EdgeInsets.all(10.0),
    decoration: myBoxDecoration(), //             <--- BoxDecoration here
    child: Text(
      "text",
      style: TextStyle(fontSize: 30.0),
    ),
  );
}
donde el BoxDecorationes
BoxDecoration myBoxDecoration() {
  return BoxDecoration(
    border: Border.all(),
  );
}
Estos tienen una anchura de borde de 1, 3y 10respectivamente.
BoxDecoration myBoxDecoration() {
  return BoxDecoration(
    border: Border.all(
      width: 1, //                   <--- border width here
    ),
  );
}
Estos tienen un color de borde de
Colors.redColors.blueColors.greenCódigo
BoxDecoration myBoxDecoration() {
  return BoxDecoration(
    border: Border.all(
      color: Colors.red, //                   <--- border color
      width: 5.0,
    ),
  );
}
Estos tienen un borde lateral de
Código
BoxDecoration myBoxDecoration() {
  return BoxDecoration(
    border: Border(
      left: BorderSide( //                   <--- left side
        color: Colors.black,
        width: 3.0,
      ),
      top: BorderSide( //                    <--- top side
        color: Colors.black,
        width: 3.0,
      ),
    ),
  );
}
Estos tienen radios de frontera 5, 10y 30respectivamente.
BoxDecoration myBoxDecoration() {
  return BoxDecoration(
    border: Border.all(
      width: 3.0
    ),
    borderRadius: BorderRadius.all(
        Radius.circular(5.0) //                 <--- border radius here
    ),
  );
}
DecoratedBox/ BoxDecorationson muy flexibles Lea Flutter - BoxDecoration Cheat Sheet para muchas más ideas.
Como se indica en la documentación, el aleteo prefiere la composición sobre los parámetros. La mayoría de las veces lo que está buscando no es una propiedad, sino un contenedor (y, a veces, algunos ayudantes / "constructores")
Para las fronteras lo que quieres es
DecoratedBox, que tiene undecorationpropiedad que define los bordes; pero también imágenes de fondo o sombras.Alternativamente, como dijo @Aziza, puede usar
Container. Cuál es la combinación deDecoratedBox,SizedBoxy algunos otros widgets útiles.fuente
La mejor manera es usar BoxDecoration ()
Ventaja
Desventaja
BoxDecorationsolo use conContainerwidget para que desee envolver su widget enContainer()Ejemplo
fuente
Usar BoxDecoration () es la mejor manera de mostrar el borde.
También puedes ver el formato completo aquí
fuente
Puede usar Contenedor para contener su widget:
fuente
Use un recipiente con Boxdercoration.
fuente