Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 使用颜色作为;“红色”;而不是颜色。红色在飘动_Flutter_Constants - Fatal编程技术网

Flutter 使用颜色作为;“红色”;而不是颜色。红色在飘动

Flutter 使用颜色作为;“红色”;而不是颜色。红色在飘动,flutter,constants,Flutter,Constants,这是关于对问题的评论 我想为我的所有颜色值定义一个单独的文件作为colors.dart <data type> red = Colors.red (I am not sure of data tpye to be use here I mean String, Color or what) <data type> cyan = hex code “红色”、“绿色”就像我们在安卓系统中所做的一样 我看了很多关于S/O的文章,在大多数实现中,最后我们仍然需要使用点运算符来访

这是关于对问题的评论

我想为我的所有颜色值定义一个单独的文件作为colors.dart

<data type> red = Colors.red (I am not sure of data tpye to be use here I mean String, Color or what)
<data type> cyan = hex code
“红色”、“绿色”就像我们在安卓系统中所做的一样

我看了很多关于S/O的文章,在大多数实现中,最后我们仍然需要使用点运算符来访问创建的变量,这类似于使用Colors.red,然后使用像“red”这样的短名称的目的没有解决

然后我在@ChinLoong()处看到了这条评论

在那里,ChinLoong准确地谈到了我脑海中的事情,但我不确定如何准确地使用这种方法

因为我无法在那里发表评论(由于声誉问题),所以我在这里提问

此外,我相信即使使用这种枚举方法,我仍然必须使用点运算符访问颜色变量。即使我会创建一个函数来返回颜色,再次,点运算符

无论如何,我的全部刚性和决心是避免在使用颜色时使用点语法。只有红色或绿色

请告诉我有什么办法


谢谢。

您可以有一个文件colors.dart,在该文件中您可以定义,而无需任何类

final Color red = Colors.red;

在这种情况下,您可以在不使用点运算符的情况下使用“red”。

创建一个名为
colors.dart的文件

import 'dart:ui';

const Color red = const Color(0xFFFF0000);
const Color green = const Color(0xFF00FF00);
const Color blue = const Color(0xFF0000FF);
const Color yellow = const Color(0xFFFFFF00);
const Color orange = const Color(0xFFFFA500);
const Color purple = const Color(0xFF800080);
导入
colors.dart
,无论您喜欢在哪里使用它

import'package:your_app/utils/colors.dart'

color: red,

通过这种方式,您可以添加任意数量的自定义颜色,这些颜色是您喜欢在应用程序中使用的。

那么
final red=colors.red有什么问题放在一个单独的文件中?@pskink可能需要一些定制colors@pskink在得到下面的答案之前,我不知道如何准确地使用常量。我在想,我必须创建一个类或函数,在这种情况下,我仍然必须使用点运算符来访问其中定义的任何颜色变量。太棒了!在搜索更多常量的同时,我了解了以“k”开头的常量变量名。为了使我的代码符合编码标准,我必须这样声明名称吗?为什么两边都使用“const”关键字,我使用const Color purple=Color(0xFF800080);并且没有IDE错误。只是想知道使用const和Color(0xFF800080)的实际原因是什么;同样。如果使用
Color purple=Color(0xFF800080)
则可以像
purple=Color(0xFFFFFF)一样重新分配
purple
变量,但如果使用
const Color purple`则无法重新分配,如果尝试重新分配,则会出现错误。如果需要,可以删除右侧的
常量@PriyankSharmagot!为什么常量Color kLikeButton=Colors.blue[100];给出错误-“必须用常量值初始化常量变量”。颜色。蓝色[100]不是常量值吗?@PriyankSharma
Colors。蓝色[100]
不是常量值。只要找到十六进制代码,它就像
Color(0xFF000000)
color: red,