Ich verwende Flutter und möchte einem Widget (in diesem Fall einem Text-Widget) einen Rahmen hinzufügen.
Ich habe TextStyle und Text ausprobiert, aber ich habe nicht gesehen, wie man einen Rahmen hinzufügt.
quelle
Ich verwende Flutter und möchte einem Widget (in diesem Fall einem Text-Widget) einen Rahmen hinzufügen.
Ich habe TextStyle und Text ausprobiert, aber ich habe nicht gesehen, wie man einen Rahmen hinzufügt.
Sie können das TextField
als a child
zu einem hinzufügen Container
, das eine BoxDecoration
with- border
Eigenschaft hat:
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"),
)
Hier ist eine erweiterte Antwort. A DecoratedBox
ist das, was Sie brauchen, um einen Rand hinzuzufügen, aber ich verwende a, Container
um das Hinzufügen von Rand und Polsterung zu vereinfachen.
Hier ist das allgemeine Setup.
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),
),
);
}
wo das BoxDecoration
ist
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(),
);
}
Diese haben eine Rahmenbreite von 1
, 3
und 10
sind.
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
width: 1, // <--- border width here
),
);
}
Diese haben eine Randfarbe von
Colors.red
Colors.blue
Colors.green
Code
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
color: Colors.red, // <--- border color
width: 5.0,
),
);
}
Diese haben eine Grenzseite von
Code
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,
),
),
);
}
Diese haben Grenzradien 5
, 10
und 30
jeweils.
BoxDecoration myBoxDecoration() {
return BoxDecoration(
border: Border.all(
width: 3.0
),
borderRadius: BorderRadius.all(
Radius.circular(5.0) // <--- border radius here
),
);
}
DecoratedBox
Ich BoxDecoration
bin sehr flexibel. Lesen Sie Flutter - BoxDecoration Cheat Sheet für viele weitere Ideen.
Wie in der Dokumentation angegeben, bevorzugen Flattern die Zusammensetzung gegenüber Parametern. Meistens ist das, wonach Sie suchen, keine Eigenschaft, sondern ein Wrapper (und manchmal ein paar Helfer / "Builder").
Für Grenzen möchten Sie
DecoratedBox
einedecoration
Eigenschaft, die Grenzen definiert. aber auch Hintergrundbilder oder Schatten.Alternativ, wie @Aziza sagte, können Sie verwenden
Container
. Welches ist die Kombination ausDecoratedBox
,SizedBox
und ein paar andere nützlichen Widgets.quelle
Am besten verwenden Sie BoxDecoration ()
Vorteil
Nachteil
BoxDecoration
Nur mitContainer
Widget verwenden, damit Sie Ihr Widget einbinden könnenContainer()
Beispiel
quelle
Die Verwendung von BoxDecoration () ist der beste Weg, um Rahmen anzuzeigen.
Sie können auch Vollformat sehen hier
quelle
Sie können Container verwenden, um Ihr Widget zu enthalten:
quelle
Verwenden Sie einen Behälter mit Boxdercoration.
quelle