如果未在使用小部件的位置分配任何值,我想为小部件分配默认颜色Color(0xFF1D1E33)
class ReusableContainer extends StatelessWidget {
Color colour;
ReusableContainer({this.colour});
@override
Widget build(BuildContext context) {
return Container(
margin: EdgeInsets.all(15),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10.0),
color: colour,
),
);
}
}
ReusableContainer(colour: Color(0xFFF48024)), //assigned value here
.........
.........
ReusableContainer() //default value here
答案 0 :(得分:0)
您既可以使用命名参数的默认值(它将为空),也可以使用支持空值的运算符来设置属性(该属性不能为空)。
class ReusableContainer extends StatelessWidget {
Color colour;
ReusableContainer({this.colour = const Color(0xFF1D1E33)});
...
或
class ReusableContainer {
Color colour;
ReusableContainer({Color colour}) : colour = colour ?? const Color(0xFF1D1E33);
...
}
答案 1 :(得分:0)
只需更改您的构造函数,即可:
ReusableContainer({this.colour});
到
ReusableContainer({this.colour = const Color(0xFF1D1E33)});