2011-05-09 104 views
2

我看到了一個例子在線:定義顏色時什麼是0x30?

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

我不知道第一字符代表,但最後6樣子十六進制數。它是否正確?

+0

整個數量是在基座10中值'INT [] {821623032,820701930}'的十六進制的整數表示。這意味着什麼可能取決於應用程序 – 2011-05-09 19:17:42

回答

6

根據格式,它看起來像那些顏色是RGBA(或他們的一些其他的再奧爾丁。)

從本質上講,

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

如果你知道哪一個是α,你可以用00替換它,或如果它在開始時,將其刪除

0xF8F8F8 
0x00F8F8F8 
0

30也是十六進制數字。它的意思是十進制的3*16^1 + 0*16^0 = 48。我可能是alpha通道,但只有在閱讀使用該數組的方法的文檔後才能確定。

+0

如何在數組中定義#F8F8F8? – 2011-05-09 19:17:18

+0

'0xF8F8F8'。人們對今天最奇怪的事情感到莫名其妙.. – Blindy 2011-05-09 19:18:23

+0

只需把'30'離開。但是,根據解釋,您可能最終沒有可見的顏色。在這種情況下,請使用「0xFFF8F8F8」。 – Femaref 2011-05-09 19:18:31

0

最左邊的2個數字代表支持32位顏色的格式中的alpha通道(透明度)。陣列中的兩種顏色是具有相同透明度級別的灰色陰影。

另外,30是十六進制數。