Swift - UIColor 16进制转换 及 获取RGB随机颜色

因为在swift中,扩展类是没有名字的,所以名字我们自己随便取,xxColor什么的都可以。现在直接上代码

/**
 *  扩展部分
 */
extension UIColor {
    
    /**
     *  16进制 转 RGBA
     */
    class func rgbaColorFromHex(rgb:Int, alpha:CGFloat) ->UIColor {
        
        return UIColor(red: ((CGFloat)((rgb &0xFF0000) >>16)) /255.0,
                     green: ((CGFloat)((rgb & 0xFF00) >> 8)) / 255.0,
                      blue: ((CGFloat)(rgb & 0xFF)) / 255.0,
                     alpha: alpha)
    }
    
    /**
     *  16进制 转 RGB
     */
    class func rgbColorFromHex(rgb:Int) ->UIColor {
        
        return UIColor(red: ((CGFloat)((rgb &0xFF0000) >>16)) /255.0,
                     green: ((CGFloat)((rgb & 0xFF00) >> 8)) / 255.0,
                      blue: ((CGFloat)(rgb & 0xFF)) / 255.0,
                     alpha: 1.0)
    }
}

调用  

 view1.backgroundColor = UIColor.rgbaColorFromHex(0xb38a34, alpha: 0.3);

        /**
         *  RGB 随机颜色
         */
        let red = CGFloat(arc4random_uniform(255))/CGFloat(255.0)
        let green = CGFloat( arc4random_uniform(255))/CGFloat(255.0)
        let blue = CGFloat(arc4random_uniform(255))/CGFloat(255.0)
        let alpha = CGFloat(arc4random_uniform(255))/CGFloat(255.0)
        
        let color = UIColor.init(red:red, green:green, blue:blue , alpha: alpha)








你可能感兴趣的:(Swift)