Android color设置小结
以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 //高精度 - 带透明通道红色
而开发中使用高精度色码,并酌情考虑是否是否使用透明通道来增加用户体验