我有一个从android。graphics。color生成的整数
Integer的值为-16776961
如何将此值转换为格式为#RRGGBB的十六进制字符串
简单地说:我想从-16776961输出#0000FF
注意:我不希望输出包含alpha,我也尝试了这个例子没有任何成功
我有一个从android。graphics。color生成的整数
Integer的值为-16776961
如何将此值转换为格式为#RRGGBB的十六进制字符串
简单地说:我想从-16776961输出#0000FF
注意:我不希望输出包含alpha,我也尝试了这个例子没有任何成功
当前回答
蒙版确保你只得到RRGGBB, %06X给你零填充十六进制(总是6个字符长):
String hexColor = String.format("#%06X", (0xFFFFFF & intColor));
其他回答
你可以使用这个没有alpha的颜色:
String hexColor = String.format("#%06X", (0xFFFFFF & intColor));
或者这个是
String hexColor = String.format("#%08X", (0xFFFFFFFF & intColor));
蒙版确保你只得到RRGGBB, %06X给你零填充十六进制(总是6个字符长):
String hexColor = String.format("#%06X", (0xFFFFFF & intColor));
String int2string = Integer.toHexString(INTEGERColor); //to ARGB
String HtmlColor = "#"+ int2string.substring(int2string.length() - 6, int2string.length()); // a stupid way to append your color
这是我所做的
int color=//your color
Integer.toHexString(color).toUpperCase();//upercase with alpha
Integer.toHexString(color).toUpperCase().substring(2);// uppercase without alpha
谢谢你们的回答
在Koltin中使用这种方法
var hexColor = "#${Integer.toHexString(ContextCompat.getColor(context, R.color.colorTest))}"