Android layout 如何使用整数设置颜色?

Android layout 如何使用整数设置颜色?,android-layout,colors,views,setbackground,Android Layout,Colors,Views,Setbackground,如何将整数ex:13369395中的颜色代码转换为特定于android的颜色代码。因为13369395也是一个整数,所以我试着 mainLayout.setTextColor(13369395); 但它不起作用 我还尝试将13369395转换为十六进制,如: mainLayout.setBackgroundColor(Integer.parseInt(13369395 +"", 16)+0xFF000000); 但是它也没有帮助。您可以直接使用十六进制代码 主布局。设置背景颜色(#0BB5F

如何将整数ex:13369395中的颜色代码转换为特定于android的颜色代码。因为13369395也是一个整数,所以我试着

mainLayout.setTextColor(13369395);
但它不起作用

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

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

但是它也没有帮助。

您可以直接使用十六进制代码


主布局。设置背景颜色(#0BB5FF)

我找到了解决办法。以下是十六进制的解决方法:

Integer.toHexString(彩色)

它返回整数的十六进制字符串,如果您只是通过

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

这行不通。您需要添加掩码作为

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


这就解决了问题

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

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

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

尝试传递:

mainLayout.setBackgroundColor(Color.parseColor("#FFFFFF"));

我找到了解决办法。只是一个十六进制的解决方案,如下所示:Integer.toHexString(color);它返回整数的十六进制字符串,如果mainlayet.setBackgroundColor(integer.parseInt(hexVal,16))只使用它,也是如此;这行不通。您需要将掩码添加为mainLayout.setBackgroundColor(0xff000000+Integer.parseInt(hexVal,16));这就解决了问题。ThanksmainLayout.setBackgroundColor(#0BB5FF);这在Java 1.6中不受支持