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 TextField
as child
a un Container
que tiene una propiedad BoxDecoration
with 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 DecoratedBox
es lo que necesita para agregar un borde, pero estoy usando un Container
para 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 BoxDecoration
es
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(),
);
}
Estos tienen una anchura de borde de 1
, 3
y 10
respectivamente.
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
width: 1, // <--- border width here
),
);
}
Estos tienen un color de borde de
Colors.red
Colors.blue
Colors.green
Có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
, 10
y 30
respectivamente.
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
width: 3.0
),
borderRadius: BorderRadius.all(
Radius.circular(5.0) // <--- border radius here
),
);
}
DecoratedBox
/ BoxDecoration
son 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 undecoration
propiedad 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
,SizedBox
y algunos otros widgets útiles.fuente
La mejor manera es usar BoxDecoration ()
Ventaja
Desventaja
BoxDecoration
solo use conContainer
widget 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