iOS开发 UIColor 小技巧

封装编程中常用的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

其它- 灰色是当三种RGB颜色的数字一样的时候,就是灰色,而数值越大越靠近白色,灰色也就越浅

你可能感兴趣的:(iOS开发 UIColor 小技巧)