参数类型“MaterialColor”不能分配给参数类型“Paint”

Posted

技术标签:

【中文标题】参数类型“MaterialColor”不能分配给参数类型“Paint”【英文标题】:The argument type 'MaterialColor' can't be assigned to the parameter type 'Paint' 【发布时间】:2018-12-26 19:12:07 【问题描述】:

我想将背景颜色设置为红色,但 TextStyle 小部件下没有 'backgroundColor' 属性。

有背景属性,但我无法设置背景的值。它显示错误&错误是

参数类型“MaterialColor”不能分配给参数 输入“油漆”

我知道这个错误是合理的。 但是背景属性的值应该是多少?

我搜索但遗憾的是找不到:( 我可以将背景设置为background: Paint(),背景变为黑色。但我需要红色背景。 背景的值应该是多少?

谢谢

【问题讨论】:

【参考方案1】:

只需将Paintcolor 属性设置为Colors.red

Text(
  "Hello",
  style: TextStyle(background: Paint()..color = Colors.red),
),

【讨论】:

哦! "Paint()..color = Colors.red" ,称为级联方法。我只是学习这些新东西。谢谢【参考方案2】:

建议您直接使用backgroundColor 属性,而不是使用background 来定义颜色,如下所示:

   Text(
        'Wow',
        style: TextStyle(backgroundColor: Colors.red),
      ),

【讨论】:

以上是关于参数类型“MaterialColor”不能分配给参数类型“Paint”的主要内容,如果未能解决你的问题,请参考以下文章

错误:无法将参数类型“MaterialAccentColor”分配给参数类型“MaterialColor”

类型'Color'不是Flutter中'MaterialColor'类型错误的子类型?

颤振列表错误参数类型'List'不能分配给参数类型'String'

获取错误“未知”类型的参数不能分配给“错误”类型的参数 |空值'

参数类型“对象?”不能分配给参数类型'String'最新版本

参数类型“字符串”不能分配给参数类型“目录”