我正在尝试将我的FlatButton
迁移到TextButton
。由于升级了我的Flutter版本,FlatButtons
已被弃用。我目前正在努力调整背景颜色。
旧的按钮:
FlatButton(
height: height,
onPressed: onPressed,
shape: baseButtonBorder,
color: Colors.red,
child: Text(label, style: TextStyle(color: fontColor, fontWeight: boldLabel ? FontWeight.bold : FontWeight.normal)),
)`
新按钮:
TextButton(
onPressed: onPressed,
style: ButtonStyle(backgroundColor: Colors.red), // <-- Does not work
child: Text(label, style: TextStyle(color: fontColor, fontWeight: boldLabel ? FontWeight.bold : FontWeight.normal)),
),
扁平按钮没有color
属性,因此我尝试使用style
属性并添加ButtonStyle
。然而Dart会说:
参数类型'MaterialColor'不能赋值给参数类型'MaterialStateProperty<Color>'。
我该如何像以前在FlatButton
中一样使用红色来样式化我的TextButton
?我需要创建一个带有红色的MaterialStateProperty<Color>
吗?
MaterialStateProperty.all
吗?为什么不能直接使用Colors.red
? - LOLWTFasdasd asdadbacgroundColor
不是Color
类型,因此您无法使用Colors.red
。 您可以在Flutter文档中找到有关MaterialStateProperty
的更多详细信息:https://api.flutter.dev/flutter/material/MaterialStateProperty-class.html。 - Jouby