我想使用一个颜色从一个六边形字符串,如“#FFFF0000”来(说)改变一个布局的背景颜色。 颜色。HSVToColor看起来像一个赢家,但它以float[]作为参数。

我离解决方案还有一步之遥吗?


当前回答

我用这个,它很适合我设置任何我想要的颜色。

public static final int MY_COLOR = Color.rgb(255, 102, 153);

为每个红色,绿色和蓝色设置颜色0-255,然后在任何你想要使用的颜色的地方放置MY_COLOR而不是color。蓝色或彩色。红色或Color类提供的任何其他静态颜色。

只要做一个谷歌搜索颜色图表,你就可以找到一个使用0-255的正确RGB代码的图表。

其他回答

如果你在XML中定义了一个颜色,并想用它来改变背景颜色或其他东西,这个API就是你正在寻找的:

 ((TextView) view).setBackgroundResource(R.drawable.your_color_here);

在我的示例中,我将它用于TestView

我用这个,它很适合我设置任何我想要的颜色。

public static final int MY_COLOR = Color.rgb(255, 102, 153);

为每个红色,绿色和蓝色设置颜色0-255,然后在任何你想要使用的颜色的地方放置MY_COLOR而不是color。蓝色或彩色。红色或Color类提供的任何其他静态颜色。

只要做一个谷歌搜索颜色图表,你就可以找到一个使用0-255的正确RGB代码的图表。

试试这个

int colorInt = Color.parseColor("#FF00FFF0");
bg.setBackgroundColor(colorInt);

bg是你想要设置背景色的视图或布局。

尝试使用0xFFF000代替,并将其传递到颜色。HSVToColor方法。

缩短十六进制代码

int red = colorString.charAt(1) == '0' ? 0 : 255;
int blue = colorString.charAt(2) == '0' ? 0 : 255;
int green = colorString.charAt(3) == '0' ? 0 : 255;
Color.rgb(red, green,blue);