swift-3.0 将HexColor转变为UIColor的方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift-3.0 将HexColor转变为UIColor的方法相关的知识,希望对你有一定的参考价值。
// MARK:- 把#ffffff颜色转为UIColor extension UIColor { class func colorWithHexString(hex:String) ->UIColor { var cString = hex.trimmingCharacters(in:CharacterSet.whitespacesAndNewlines).uppercased() if (cString.hasPrefix("#")) { let index = cString.index(cString.startIndex, offsetBy:1) cString = cString.substring(from: index) } if (cString.characters.count != 6) { return UIColor.red } let rIndex = cString.index(cString.startIndex, offsetBy: 2) let rString = cString.substring(to: rIndex) let otherString = cString.substring(from: rIndex) let gIndex = otherString.index(otherString.startIndex, offsetBy: 2) let gString = otherString.substring(to: gIndex) let bIndex = cString.index(cString.endIndex, offsetBy: -2) let bString = cString.substring(from: bIndex) var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0; Scanner(string: rString).scanHexInt32(&r) Scanner(string: gString).scanHexInt32(&g) Scanner(string: bString).scanHexInt32(&b) return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: CGFloat(1)) } }
将以上方法直接复制粘贴至任意类中即可,调用方法如下:
let tmpColor = UIColor.colorWithHexString(hex: "#FFFFFF")
以上是关于swift-3.0 将HexColor转变为UIColor的方法的主要内容,如果未能解决你的问题,请参考以下文章
使用 Swift 3.0 将包含“字符串数组”的字符串解析为数组 [重复]
我必须将目标 c 代码转换为 swift 3.0,尝试在线转换时出错