iOS开发 UIColor 小技巧

作者: 猫爪 | 来源:发表于2015-11-08 14:10 被阅读583次

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

        本文链接:https://www.haomeiwen.com/subject/rjgchttx.html