文档章节

Swift3 十六进制颜色代码转UIColor & CGColor

SevensChan
 SevensChan
发布于 2017/04/28 10:02
字数 172
阅读 15
收藏 0

这个算是常用的函数了 网上的都是swift2版本 自己更新了下在这里留个档

func colorWithHexString (hex:String) -> UIColor {
        var cString:String = hex.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines).uppercased()
        
        if (cString.hasPrefix("#")) {
            cString = (cString as NSString).substring(from: 1)
        }
        
        if (cString.characters.count == 3){
            cString += cString
        }
        
        let rString = (cString as NSString).substring(to: 2)
        let gString = ((cString as NSString).substring(from: 2) as NSString).substring(to: 2)
        let bString = ((cString as NSString).substring(from: 4) as NSString).substring(to: 2)
        
        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))
    }


func CGColorFromRGB(rgbValue: UInt) -> CGColor {
        return UIColor(
            red: CGFloat((rgbValue & 0xFF0000) >> 16) / 255.0,
            green: CGFloat((rgbValue & 0x00FF00) >> 8) / 255.0,
            blue: CGFloat(rgbValue & 0x0000FF) / 255.0,
            alpha: CGFloat(1.0)
        ).cgColor
    }

 

© 著作权归作者所有

共有 人打赏支持
SevensChan

SevensChan

粉丝 24
博文 59
码字总数 32119
作品 0
澳门
高级程序员
私信 提问
苹果开机经典滑动动画

1首先定义 @interface ViewController () { CAGradientLayer* _gridentlayer; } @end 2 在viewDidLoad中实现 //这里出现了CALayer的另一个子类CAGradientLayer,这个类的作用就是能在Layer上...

caoxiang
2015/09/24
76
0
IOS UIColor 自定义颜色

这几篇经常使用 UIColor,但是却碰到了很多问题,主要的问题,就是自定义颜色 和 同 CIColor 与 CGColor 之间的联系、转换 花了点时间,终于搞明白了。 1. 利用UIColor展现 #F6F6F6 这个传统...

vane_
2013/06/04
0
0
quartz2D绘制简单的几何图形

第一部分 quartz2D绘图基础简介:CGContextRef 一 quartz2D经常用来绘图,它的核心API是CGContextRef 二 CGContextRef的获取 1. 创建位图时获取我们所需CGContextRef(常称为绘图上下文) 在...

不孤独的美食家
2015/10/14
511
0
iOS 做一个圆形渐变圆环

代码主要用到: CALayer+UIBezierPath+CAShapeLayer+CAGradientLayer+CABasicAnimation 1.创建一个图层 效果如图: 2.绘制一个路径,再生成一个背景圆环加到view上 效果如图: 3.利用CAGradientL...

TouchMing
01/15
0
0
iOS图层layer操作

图层layer 1.操作view图层(代码加注释) 1.1属性操作 1.2变换操作 2. UIImageView的图层操作 2.1 UIImageView的图层操作 2.2 UIImageView的图层裁剪操作 3.隐式动画 所有非root layer,也就是...

AppleDream
2016/07/04
34
0

没有更多内容

加载失败,请刷新页面

加载更多

ORA 各种oraclesql错误

ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某...

青峰Jun19er
8分钟前
2
0
没错,老板让我写个 BUG!

前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动。这可是我特长啊;终于可以光明正大的写 bug 了🙄。 先来看看具体是要干啥吧,其实主要就是...

crossoverJie
21分钟前
2
0
开源软件会被云杀死吗 ?

本文转载云头条,原作者:Michael Stiefel是Reliable Software公司的负责人,是一名软件架构和开发顾问。 文章要点 虽然开源开发不会消失,但商业开源厂商的未来不是很有希望。随着全面管理的...

linuxCool
54分钟前
5
0
OSChina 周三乱弹 —— 谈什么对象?睡什么觉?

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @胖达panda :最肯忘却古人诗,最不屑一顾是相思。分享童丽的单曲《红豆生南国》: 《红豆生南国》- 童丽 手机党少年们想听歌,请使劲儿戳(这...

小小编辑
59分钟前
444
7
stylus

stylus基础教程,stylus实例教程,stylus语法总结

miaojiangmin
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部