定义颜色时什么是0x30?

时间:2011-05-09 19:15:10

标签: java android colors hex rgb

我在网上看到了一个例子:

private int[] colors = new int[] { 0x30F8F8F8, 0x30EAEAEA };

我不确定第一个字符代表什么,但最后6个看起来像十六进制数字。这是对的吗?

3 个答案:

答案 0 :(得分:6)

根据格式,看起来这些颜色是RGBA(或其他一些重新定位)。

基本上,

0x30 = Alpha component
0xF8 = Red component
0xF8 = Green component
0xF8 = Blue component

如果您知道哪一个是alpha,您可以将其替换为00,或者如果它在开头,则将其删除

0xF8F8F8
0x00F8F8F8

答案 1 :(得分:0)

30也是十六进制数。它表示小数点3*16^1 + 0*16^0 = 48。我可能是alpha通道,但只有在您阅读使用该数组的方法的文档后才能确定。

答案 2 :(得分:0)

最左边的2个数字代表支持32位颜色的格式的Alpha通道(透明度)。数组中的两种颜色是灰色阴影,具有相同的透明度级别。

此外,30是十六进制数。