美文网首页
swift 4.2中16进制color类别扩展

swift 4.2中16进制color类别扩展

作者: 雾霭天涯 | 来源:发表于2018-11-14 14:45 被阅读0次
import UIKit
extension UIColor {
    vartoHexString:String{
        varr:CGFloat=0
        varg:CGFloat=0
        varb:CGFloat=0
        vara:CGFloat=0
        self.getRed(&r, green: &g, blue: &b, alpha: &a)
        returnString(
            format:"%02X%02X%02X",
            Int(r *0xff),
            Int(g *0xff),
            Int(b *0xff)
        )
    }
    convenience init(hex: String) {
        letscanner =Scanner(string: hex)
        scanner.scanLocation=0
        varrgbValue:UInt64=0
        scanner.scanHexInt64(&rgbValue)
        letr = (rgbValue &0xff0000) >>16
        letg = (rgbValue &0xff00) >>8
        letb = rgbValue &0xff
        self.init(
            red:CGFloat(r) /0xff,
            green:CGFloat(g) /0xff,
            blue:CGFloat(b) /0xff, alpha:1
        )
    }
}
/*
 //use example:
 let color = UIColor.red
 let hex = color.toHexString
 // hex == "FF0000"
 let color = UIColor(hex: "ff0000")
 //color == UIColor.red
 */

相关文章

网友评论

      本文标题:swift 4.2中16进制color类别扩展

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