这是我将字符串转换为颜色的代码:
我得到了以下的调试错误信息:
我尝试了清理和重建项目,以及将
为什么代码不能编译?
public Color prepareColour(String str) {
str.replace("#", "");
float r = Float.valueOf(str.substring(0,1));
float g = Float.valueOf(str.substring(2,3));
float b = Float.valueOf(str.substring(4,5));
Color color = Color.valueOf(r,g,b);
return color;
}
我得到了以下的调试错误信息:
然而,Android Studio 编译之前的建议是:错误:(16, 23) 错误: 无法将Color类中的构造函数应用于给定类型; 所需参数:无 找到参数:float,float,float 原因:实际参数和形式参数列表长度不同
我看到有2011年的答案支持创建颜色的这种方式,所以它一定可以在API 17上工作,并且不需要26。要求调用 API 等级 26 (当前最小等级为17)......
我尝试了清理和重建项目,以及将
str.substring
替换为实际值,但没有任何改变。为什么代码不能编译?
Color.valueOf(?)
方法是在 JavaFX 中。如果是这样,请使用Color.valueOf(someHexString)
,它应该可以正常工作。 - Tom K