封装编程中常用的UIColor
- 在Objective-C 中,可以使用宏如:
/**====== 颜色 =========*/
#define XWARGBColor(a, r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:(a)/255.0]
#define XWColor(r, g, b) XWARGBColor(255, (r), (g), (b))
/* 当 RGB 三种颜色一样的时候,XWColor灰色,数字越到 越靠近白色,那么就越浅*/
#define XWGrayColor(v) XWColor((v), (v), (v))
- Swift 使用函函数和常量
//颜色
func xwColor(r r:Float, g:Float, b:Float) -> UIColor { return UIColor(red: CGFloat(r / 255.0), green: CGFloat(g / 255.0), blue: CGFloat(b / 255.0), alpha: CGFloat(1.0)) }
//灰色
let xwGrayColor = xwColor(r: 233, g: 233, b: 233)
颜色的常识
- 1> 每一种颜色都是由N个颜色通道组成
- 2> 常见的颜色通道
A:alpha 透明度
R:red 红色
G:green 绿色
B:blue 蓝色
- 3> 常见颜色
- 白色:全部通道满值
- 黑色:全部通道都是0(透明度除外)
- 灰色:RGB通道的值一样
一、32bit颜色
1> 颜色组成
1. 由ARGB四个颜色通道组成
2. 每一个颜色通道都占据8bit
3. 每一个颜色通道的取值范围是[0, 255] [0x00, 0xff] [0b00000000, 0b11111111]
2> 颜色的表示格式
1. 16进制格式(HEX格式) * 绿色 #ff00ff00 * 黄色 #ffffff00 * 白色 #ffffffff * 黑色 #ff000000
2. ARGB格式 * 绿色 255,0,255,0 * 黄色 255,255,255,0 * 白色 255,255,255,255 * 黑色 255,0,0,0
二、24bit颜色
1> 颜色组成
1. 由RGB三个颜色通道组成
2. 每一个颜色通道都占据8bit
3.每一个颜色通道的取值范围是[0, 255] [0x00, 0xff] [0b00000000, 0b11111111]
2> 颜色的表示格式
1. 16进制格式(HEX格式) * 绿色 #00ff00 * 黄色 #ffff00 * 白色 #ffffff * 黑色 #000000
2. RGB格式 * 绿色 0,255,0 * 黄色 255,255,0 * 白色 255,255,255 * 黑色 0,0,0
三、12bit颜色
1> 颜色组成
1. 由RGB三个颜色通道组成
2. 每一个颜色通道都占据4bit
3. 每一个颜色通道的取值范围是[0, 15] [0x0, 0xf] [0b0000, 0b1111]
2> 颜色的表示格式
1. 16进制格式(HEX格式)
* 绿色 #0f0
* 黄色 #ff0
* 白色 #fff
* 黑色 #000
2. RGB格式
* 绿色 15
* 黄色 15,15,0
* 白色 15,15,15
* 黑色 0,0,0
网友评论