【问题标题】:The argument type 'Colors.red' can't be assigned to the parameter type 'Paint'参数类型“Colors.red”不能分配给参数类型“Paint”
【发布时间】:2020-09-24 03:56:52
【问题描述】:

我想将背景颜色设置为红色,并且我知道 TextStyle 小部件下有一个“backgroundColor”属性,但我想使用背景。

我在其他问题的另一个答案中看到了此代码,但我对我没有任何作用。

enter image description here

【问题讨论】:

  • 这里需要更多信息,您想将什么背景设置为红色,您能否提供一些您尝试设置背景的小部件的代码?跨度>
  • 代码在TextStyle - background: Paint()..color = Colors.red @Bryan 中运行良好
  • stackoverflow.com/questions/49447736/… 这可以帮助您更好地理解级联概念。 Paint()..color = Colors.red 将返回当前的 Paint 对象。所以你的代码工作正常。错误提示可能是由其他原因引起的。
  • 这个错误是因为尝试创建_bigFont时使用了const;实际错误为:“无法调用需要 const 表达式的非‘const’工厂。”因此,正如我在下面写的,如果您删除 const 关键字,它将起作用。

标签: flutter


【解决方案1】:

如果屏幕截图是您的实际代码的屏幕截图,那么您的问题是您正在使用 const 来初始化 Paint() 构造函数(这是一个“非常量”),这就是它给您一个错误的原因.

所以在你的情况下,只需这样做:

final _bigFont =   TextStyle(fontSize:18, background: Paint()..Colors.red);

错误就会消失。

【讨论】:

  • 不是我 :C
猜你喜欢
  • 2018-12-26
  • 2021-01-05
  • 2021-06-19
  • 2021-12-13
  • 2021-08-19
  • 2020-06-25
  • 2019-02-13
  • 2019-06-09
  • 2021-11-14
相关资源
最近更新 更多