我需要在 UI 滚动时更改 textColor。 我所做的是将颜色声明到 Colors.xml 文件中。
<color name="color1">#e0195c</color>
<color name="color2">#7f26db</color>
<color name="color3">#1d38df</color>
<color name="color4">#1b1b1d</color>
<color name="color5">#232428</color>
我正在尝试通过使用以下代码来使用它们:
textView.setTextColor(getResource().getColor(R.color.color1));
但在执行过程中,其中一些不起作用。比如 color1 不工作。
它抛出异常:- String #e0195c 转换错误
如果我遗漏了什么,请告诉我。
最佳答案
你可以像这样动态设置颜色
textview.setTextColor(Color.parseColor("#e0195c"));
它对我有用。而且我没有收到任何异常。
现在我为颜色代码创建了一个数组
private String[] colorHexCode = {"#e0195c", "#7f26db", "#1d38df"};
textview.setTextColor(Color.parseColor(colorHexCode[0]));
因此您也可以使用数组更改颜色。
关于java - 如何将十六进制颜色代码分配给java类文件中的任何数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15362269/