public static int RGB(float[] hsv) {
return Color.HSVToColor(hsv);
}
此函数从颜色添加一个int。如何将该int转换为十六进制字符串:#efefef
答案 0 :(得分:157)
关于颜色,st0le的答案是不正确的。如果第一个颜色分量为0,它就不起作用。所以toHexString没用。
但是,此代码将按预期工作:
String strColor = String.format("#%06X", 0xFFFFFF & intColor);
答案 1 :(得分:20)
以下是将Integer转换为Hex Strings的两种方法......
int n = 123456;
System.out.println(String.format("#%X", n)); //use lower case x for lowercase hex
System.out.println("#"+Integer.toHexString(n));
答案 2 :(得分:0)
如果要转换为javascript格式:
val hexColor = String.format("%06X", 0xFFFFFFFF.and(R.color.text.toColorInt(context).toLong()))
val javascriptHexColor = "#" + hexColor.substring(2) + hexColor.substring(0, 2)
答案 3 :(得分:0)
用这种方式
Java:
String hexColor = "#" + Integer.toHexString(ContextCompat.getColor(context, R.color.colorTest))
科特林:
var hexColor = "#${Integer.toHexString(ContextCompat.getColor(context, R.color.colorTest))}"