如何在Android中将颜色整数转换为十六进制字符串?

我有一个从android.graphics.Color生成的整数

Integer的值为-16776961

如何将此值转换为格式为#RRGGBB的十六进制字符串

简而言之:我想从-16776961输出#0000FF

注意:我不希望输出包含alpha,我也尝试过这个例子,但没有取得任何成功


掩码确保你只能得到RRGGBB,并且%06X给你零填充十六进制(总是6个字符长):

String hexColor = String.format("#%06X", (0xFFFFFF & intColor));

尝试Integer.toHexString()

来源:在Java中,如何将字节数组转换为一串十六进制数字,同时保持前导零?


我相信我已经找到了答案,这段代码将整数转换为一个十六进制字符串,并删除了alpha。

Integer intColor = -16895234;
String hexColor = "#" + Integer.toHexString(intColor).substring(2);

请注意,只有在确定删除Alpha时才会影响任何内容, 使用此代码。

链接地址: http://www.djcxy.com/p/87407.html

上一篇: How to convert a color integer to a hex String in Android?

下一篇: Programmatically darken a Hex colour