【发布时间】:2019-06-27 21:59:58
【问题描述】:
我正在尝试这样使用它,但它在文本上没有给我任何颜色。
Color.fromARGB(1, 239 ~/ 255, 58 ~/ 255, 121 ~/ 255)
【问题讨论】:
-
~/运算符将使您的所有 RGB 值都为 0 并返回黑色。这是故意的吗?
我正在尝试这样使用它,但它在文本上没有给我任何颜色。
Color.fromARGB(1, 239 ~/ 255, 58 ~/ 255, 121 ~/ 255)
【问题讨论】:
~/ 运算符将使您的所有 RGB 值都为 0 并返回黑色。这是故意的吗?
如果要将不透明度指定为介于 0.0(透明)和 1.0(完全不透明)之间的双精度值,请使用 Color.fromRGBO()。不透明度值是最后一个参数。
Color.fromRGBO(int r, int g, int b, double opacity)
但如果您想将不透明度指定为介于 0(透明)和 255(完全不透明)之间的整数值,请使用 Color.fromARGB()。不透明度值是第一个参数。
Color.fromARGB(int a, int r, int g, int b)
这两种方法的r、g、b参数都是0到255之间的整数值。
【讨论】:
增加 alpha(第一个参数),以便您可以看到它。 例子:- 颜色:Color.fromARGB(255, 255, 0, 0)
【讨论】:
您也可以使用十六进制表示形式Color(0XFF212845)。
来自来源的评论
/// 换句话说,如果AA是十六进制的alpha值,RR是十六进制的红色值,
/// GG为十六进制的绿色值,BB为十六进制的蓝色值,可以是一个颜色
/// 表示为const Color(0xAARRGGBB)。
【讨论】:
我将此代码块用于我的个人项目,以便使用Color.fromRGBO 显示具有特定颜色的文本,第一个参数是Red,第二个是Green,第三个是Blue,最后一个参数定义Opacity。
Text(
"This is a sample text",
textAlign: TextAlign.center,
style: TextStyle(
color: Color.fromRGBO(255, 179, 102, 1)
)
)
【讨论】:
尝试使用
Color.fromRGBO(38, 38, 38, 0.4)
其中r 代表Red,g 代表绿色,b 代表Blue,o 代表opacity
例子:
Container(
width: double.infinity,
height: double.infinity,
color: Color.fromRGBO(38, 38, 38, 0.4),
child: Center(
child: CircularProgressIndicator(),
))
【讨论】: