我试图在下面的小工具中为一些文本添加一个边框。
Widget build(BuildContext context) {
return Container(
child: Stack(
children: <Widget>[
Positioned(
bottom: 0,
top: 70,
right: 50,
left: 50,
child: Text(
surprises[surpriseNumber]['Surprises'],
style: TextStyle(fontSize: 20, color: Colors.pink[700]),
textAlign: TextAlign.center,
),
),
],
),
);
}
但我不知道该怎么做。根据我在网上找到的答案,我觉得这样做应该可以。
Widget build(BuildContext context) {
return Container(
child: Stack(
children: <Widget>[
Positioned(
bottom: 0,
top: 70,
right: 50,
left: 50,
child: Text(
surprises[surpriseNumber]['Surprises'],
style: TextStyle(fontSize: 20, color: Colors.pink[700]),
textAlign: TextAlign.center,
child: Container(
decoration: BoxDecoration(),
),
),
),
],
),
);
}
但它失败了 The named parameter 'child' isn't defined.
有谁能指出我哪里做错了?
@override
Widget build(BuildContext context) {
return Container(
child: Stack(
children: <Widget>[
Positioned(
bottom: 0,
top: 70,
right: 50,
left: 50,
child: Container(
decoration: BoxDecoration(
border: Border.all(),
),
child: Text(
'some text here',
style: TextStyle(fontSize: 20, color: Colors.pink[700]),
textAlign: TextAlign.center,
),
),
),
],
),
);
}
这应该可以了! 你只需要将文本小组件包裹在一个容器中,并在BoxDecoration()中提供边框。你将容器放置为Text()widget的子节点,这是不可能的,因为Text()widget没有名为child的参数。