我正在从服务器接收十六进制颜色值(以这种形式#xxxxxx,例如#000000黑色)
#xxxxxx
#000000
如何将其转换为整数值?
我试图做Integer.valueOf("0x" + passedColor.substring(1, passedColor.length()))一个更疯狂的0x000000结果,但这不是int这里的解释,还有其他建议吗?
Integer.valueOf("0x" + passedColor.substring(1, passedColor.length()))
0x000000
int
我收到一个错误: 08-03 21:06:24.673: ERROR/AndroidRuntime(20231): java.lang.NumberFormatException: unable to parse '0x00C8FBFE' as integer
08-03 21:06:24.673: ERROR/AndroidRuntime(20231): java.lang.NumberFormatException: unable to parse '0x00C8FBFE' as integer
我正在使用Android SDK来执行其setBackgroundColor(int color)功能,该功能需要-您可能已经猜到了-整数颜色值。
setBackgroundColor(int color)
真正的答案是使用:
Color.parseColor(myPassedColor)在Android中,myPassedColor其hex值为#000或#000000或#00000000。
Color.parseColor(myPassedColor)
myPassedColor
hex
#000
#00000000
但是,此功能不支持诸如的速记十六进制值#000。