错误是
“Style.textStyle”方法的位置参数比那些方法少 重写方法“StyleHook.textStyle”。文本样式 文本样式(颜色 颜色)
'Style.textStyle' ('TextStyle* Function(Color*)*') 不是有效的 覆盖 'StyleHook.textStyle' ('TextStyle Function(Color, 字符串?)')。
Flutter Channel 稳定,3.0.0
环境: SDK:">=2.7.2 <3.0.0"
问题来了 @override TextStyle textStyle(Color color) { return TextStyle(color: color);
class Style extends StyleHook {
@override
double get activeIconSize => 28;
@override
double get activeIconMargin => 10;
@override
double get iconSize => 20;
@override
TextStyle textStyle(Color color) {
return TextStyle(color: color);
}
}
我使用凸底条时遇到了类似的问题。 解决方案发布在以下网址,我按照它解决了问题。
少我查看了StyleHook定义,发现可选地指定了一个String类型,所以我将其更改为接受它,如下所示,并且没有出现错误。
class Style extends StyleHook {
@override
double get activeIconSize => 30;
@override
double get activeIconMargin => 5;
@override
double get iconSize => 24;
@override
TextStyle textStyle(Color color, String s) {
return TextStyle(
fontSize: 11,
color: Colors.white,
);
}
}
如果您有类似的问题,只需添加
fontFamily
参数和 throw UnimplementedError();
textStyle 覆盖看起来像这样:
...
@override
TextStyle textStyle(Color color, String? fontFamily) {
// TODO: implement textStyle
TextStyle(fontSize: 20, color: color);
throw UnimplementedError();
}
...
希望这可以帮助你!