8

如何将整数 ex: 13369395 中的颜色代码转换为特定于 android 的颜色代码。由于 13369395 也是我尝试做的整数

mainLayout.setTextColor(13369395);

但它不工作。

我还尝试将 13369395 转换为十六进制,例如:

mainLayout.setBackgroundColor(Integer.parseInt(13369395 +"", 16)+0xFF000000);

但这也没有帮助。

4

4 回答 4

8

我得到了解决方案。只需使用 Hexadecimal 即可,如下所示:

Integer.toHexString(colour);

它返回整数的十六进制字符串,如果你只是使用它

mainLayout.setBackgroundColor(Integer.parseInt(hexVal,16));

它不会工作。您需要将掩码添加为

mainLayout.setBackgroundColor(0xff000000 + Integer.parseInt(hexVal,16));

这解决了问题

于 2011-12-14T07:06:56.560 回答
8

尝试通过:

mainLayout.setBackgroundColor(Color.parseColor("#FFFFFF"));
于 2016-11-06T09:49:07.297 回答
6

这个问题很老了。这个答案仍然可以帮助那些寻找将颜色直接设置为整数的方法的人。

如果您查看 android 文档,白色的常量值为 -1,黑色为 -16777216。(即)整个颜色int值范围是(-1到-16777216)。因此,您可以简单地将整数值添加到 -16777216。

例如,如果您想设置十进制表示为 16777215 (0xffffff) 的白色,那么 16777215 - 16777216 将为您提供 -1 android 中黑色的颜色常数。

于 2016-03-21T08:52:16.413 回答
-2

可以直接取十六进制码。例如

mainLayout.setBackgroundColor(#0BB5FF);

于 2011-12-13T13:27:58.167 回答