您可以在参数上提供默认值,在您的示例中为
clr
class MyCalcButton extends StatefulWidget {
const MyCalcButton({
Key? key,
this.myNum,
required this.funkcja,
this.clr =const Color.fromARGB(255, 195, 204, 203),
}) : super(key: key);
然后像这样使用
primary: widget.clr,
.
或者只在null上提供默认值
相干激光雷达
大小写
primary: widget.clr ?? const Color.fromARGB(255, 195, 204, 203),
如果要在此状态下更新颜色。可以在状态类内创建局部变量。
class _MyCalcButtonState extends State<MyCalcButton> {
late Color? color = widget.clr;
@override
Widget build(BuildContext context) {
return ElevatedButton(
onPressed: () {
widget.funkcja();
},
style: ElevatedButton.styleFrom(
primary: color,
),
child: Center(
child: Text(
widget.myNum.toString(),
)),
);
}
}