以ARGB8888爲例介紹顏色定義:
類型 解釋 0(0x00) 255(0xff)
A(Alpha) 透明度 透明 不透明
R(Red) 紅色 無色 紅色
G(Green) 綠色 無色 綠色
B(Blue) 藍色 無色 藍色
其中ARGB的取值範圍均爲0~255(即16進制的0x00~0xff)
A 從ox00到oxff表示從透明到不透明。
RGB 從0x00到0xff表示顏色從淺到深。
在代碼中設置顏色:
int color = 0xaaff0000; //帶有透明度的紅色
在color.xml中則爲:
<color name="red">#aaff0000</color> //帶有透明度的紅色
定義顏色在代碼中以‘0x’開頭,在color.xml中以‘#’開頭,後面跟十六進制的值,有以下幾種定義方式:
低精度顏色,每一個顏色通道只用一位十六進制值:#RGB 或者 #ARGB
#f00 //低精度 - 不帶透明通道紅色
#af00 //低精度 - 帶透明通道紅色
高精度顏色,每一個顏色通道只用兩位十六進制值:#RRGGBB 或者 #AARRGGBB
#ff0000 //高精度 - 不帶透明通道紅色
#aaff0000 //高精度 - 帶透明通道紅色
而開發中使用高精度色碼,並酌情考慮是不是否使用透明通道來增長用戶體驗xml