在开发带有Flutter的应用程序时,我想定义一些常见的样式。
代码如下:
import 'package:flutter/material.dart';
class AppStyle {
static Color colorRed = const Color(0xffe04f5f);
static Color colorWhite = const Color(0xffffffff);
static Color colorGreen = const Color(0xff1abc9c);
}
现在,我想定义一个新样式。
static TextStyle listRowTitle = const TextStyle(fontSize: 20.0, color: colorGreen);
如果您编写上述内容,那么colorGreen在这里将有问题。错误信息是
[dart] Invalid constant value.
[dart] Arguments of a constant creation must be constant expressions.
Color colorGreen
如果将colorGreen更改为Color(0xff1abc9c),就没有问题!
static TextStyle listRowTitle = const TextStyle(fontSize: 20.0, color: Color(0xff1abc9c));
请我教我!
答案 0 :(得分:1)
由于颜色是在类中定义的,因此您必须执行以下操作:
AppStyle.colorGreen
日期:
哦,我知道您正在使用cont TextStyle
。因此,您可以删除const
或为const
添加AppStyle
。
我只是从const
中删除了TextStyle
:
TextStyle(fontSize: 20.0, color: AppStyle.colorGreen)
答案 1 :(得分:0)
问题是您要向常量窗口小部件的属性(颜色)声明变量值(colorGreen)。恒定的小部件不能改变,更改。
只需从小部件中删除修饰符 const
static TextStyle listRowTitle = const TextStyle(fontSize: 20.0, color: colorGreen);