博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift - 16进制颜色扩展(1.支持# 2.支持不带# , 3支持带0X)
阅读量:5019 次
发布时间:2019-06-12

本文共 1303 字,大约阅读时间需要 4 分钟。

 

 

/** *  设置16进制颜色: *  可识别类型 *  1:有# *  2:没有# *  3:含有0X */extension UIColor{    class func hexadecimalColor(hexadecimal:String)->UIColor{        var cstr = hexadecimal.trimmingCharacters(in:  CharacterSet.whitespacesAndNewlines).uppercased() as NSString;        if(cstr.length < 6){            return UIColor.clear;        }        if(cstr.hasPrefix("0X")){            cstr = cstr.substring(from: 2) as NSString        }        if(cstr.hasPrefix("#")){            cstr = cstr.substring(from: 1) as NSString        }        if(cstr.length != 6){            return UIColor.clear;        }        var range = NSRange.init()        range.location = 0        range.length = 2        //r        let rStr = cstr.substring(with: range);        //g        range.location = 2;        let gStr = cstr.substring(with: range)        //b        range.location = 4;        let bStr = cstr.substring(with: range)        var r :UInt32 = 0x0;        var g :UInt32 = 0x0;        var b :UInt32 = 0x0;        Scanner.init(string: rStr).scanHexInt32(&r);        Scanner.init(string: gStr).scanHexInt32(&g);        Scanner.init(string: bStr).scanHexInt32(&b);        return UIColor.init(red: CGFloat(r)/255.0, green: CGFloat(g)/255.0, blue: CGFloat(b)/255.0, alpha: 1);    }}

  

转载于:https://www.cnblogs.com/qingzZ/p/10302038.html

你可能感兴趣的文章
DBS-Tally book(记账本)
查看>>
java基础知识四 math类 字符 字符串 控制台输入输出 StringBuilder与StringBuffer
查看>>
查看git安装目录
查看>>
简单工厂模式 实现加减乘除
查看>>
POJ2411骨牌覆盖——状压dp
查看>>
51nod 1301 集合异或和——异或dp
查看>>
CentOS7上安装Pycharm
查看>>
正则表达式
查看>>
Android:res之selector背景选择器
查看>>
Sql Server批量删除数据表
查看>>
leetcode [238]Product of Array Except Self
查看>>
关于抽象
查看>>
博客里程
查看>>
【做题】HDU6331 Walking Plan——矩阵&分块
查看>>
使用doxmate生成文档
查看>>
5.html5中的路径表示
查看>>
EF-CodeFirst-1 玩起来
查看>>
Oracle--数据更新
查看>>
Sublime Text 3 快捷键总结
查看>>
VBS - 打开Excel和一些addin
查看>>