Flutter Container:不能同时提供颜色和装饰

我想在容器周围绘制边框,并为背景着色。

Widget bodyWidget() {

return Container(

color: Colors.yellow,

decoration: BoxDecoration(

border: Border.all(color: Colors.black),

),

child: Text("Flutter"),

);

}

但是当我尝试这个时我得到了错误

Cannot provide both a color and a decoration

The color argument is just a shorthand for “decoration: new

BoxDecoration(color: color)”.

How is this solved?

回答:

color从容器中删除参数,并将其添加到BoxDecoration中:

Widget bodyWidget() {

return Container(

decoration: BoxDecoration(

color: Colors.yellow,

border: Border.all(color: Colors.black),

),

child: Text("Flutter"),

);

}

如果检查Container的源代码,则可以看到 如果装饰为null ,则该color参数仅用于设置BoxDecoration颜色。

decoration = decoration ?? (color != null ? BoxDecoration(color: color) : null),

您收到的错误只是一个有用的提醒。否则,您将得到一个奇怪的覆盖,或者甚至可能没有注意到该错误。

以上是 Flutter Container:不能同时提供颜色和装饰 的全部内容, 来源链接: utcz.com/qa/409719.html

回到顶部