我有一个十六进制数(一种颜色)存储在一个字符串中,如下所示:“ff62e6b8”。
我需要将其转换回整数,以便再次将其用作颜色值。
我试过以下方法:

Int i = Integer.parseInt("ff62e6b8", 16);
Int i = Integer.valueOf("ff62e6b8", 16);
Int i = Integer.decode("ff62e6b8");

但所有这些方法都有例外。我是不是丢了什么东西?

最佳答案

试试这个:

int colorVal = Color.parseColor("#ff62e6b8");

例子:
myLayout.setBackgroundColor(Color.parseColor("#ff62e6b8"));

这样您将得到colorVal = -10295624
如果要从colorval生成hexcolor代码,请使用:
String hexColor = String.format("#%06X", (0xFFFFFF & colorVal));

这样您将得到hexColor = #62E6B8
谢谢。

10-07 20:54