文档章节

将 16进制 装换为 RGB

asjoker
 asjoker
发布于 2016/01/27 11:32
字数 229
阅读 23
收藏 1
点赞 1
评论 0

很多时候都使用 #XXXXXX 这种16进制的颜色值,在ios中需要转换为 RGB 


/// 转换 uicolor 颜色

func strConvertColor(colorStr:String , alpha:CGFloat = 1 ) -> UIColor {

    //删除字符串中的空格

    var str:String = colorStr.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet()).uppercaseString

    

    if str.hasPrefix("0X"){

        //如果是0x开头的,那么截取字符串,字符串从索引为2的位置开始,一直到末尾

        let index = str.startIndex.advancedBy(2)

        str = str.substringFromIndex(index)

    }else if str.hasPrefix("#"){

        //如果是#开头的,那么截取字符串,字符串从索引为1的位置开始,一直到末尾

        let index = str.startIndex.advancedBy(1)

        str = str.substringFromIndex(index)

    }

    if str.characters.count != 6 {

        return UIColor.clearColor()

    }

    

    let rString = (str as NSString).substringToIndex(2)

    let gString = ((str as NSString).substringFromIndex(2) as NSString).substringToIndex(2)

    let bString = ((str as NSString).substringFromIndex(4) as NSString).substringToIndex(2)

    

    var r:CUnsignedInt = 0, g:CUnsignedInt = 0, b:CUnsignedInt = 0;

    NSScanner(string: rString).scanHexInt(&r)

    NSScanner(string: gString).scanHexInt(&g)

    NSScanner(string: bString).scanHexInt(&b)

    

    return UIColor(red: CGFloat(r) / 255.0, green: CGFloat(g) / 255.0, blue: CGFloat(b) / 255.0, alpha: alpha )

}


© 著作权归作者所有

共有 人打赏支持
asjoker
粉丝 10
博文 108
码字总数 79411
作品 0
东城
程序员
Android/iOS及设计中ARGB颜色值百分比透明度换算

Android/iOS及设计中ARGB颜色值百分比透明度换算 设计上经常要求对一个颜色值进行一定百分比的透明度,比如给定一个颜色0xFF0000FF(蓝色)要求80%透明,该如何处理呢?80%透明的蓝色值是多少...

zhangphil
05/12
0
0
Java中二进制,十进制,十六进制装换

Java中二进制,十进制,十六进制装换 十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinaryString(int i) ...

eric_zhang
2011/07/27
0
0
将16进制的颜色值变成UIColor

HTML的颜色值都是16进制的,这份代码将HTML的16进制颜色值转换成UIColor对象(RGB)。 + (UIColor ) colorFromHexRGB:(NSString ) inColorString{ UIColor *result = nil; unsigned int colorC......

vane_
2014/03/26
0
0
Android颜色定义、设置、转换、拾取详解

Android中的颜色值通常遵循RGB/ARGB标准,使用时通常以“ # ”字符开头的8位16进制表示。其中ARGB 依次代表透明度(Alpha)、红色(Red)、绿色(Green)、蓝色(Blue),取值范围为0 ~ 255(即16进...

疾跑赶地铁
01/10
0
0
js 获得网页背景色和字体色 background-color

获得网页的背景色和字体颜色,方法如下: 思想: 通过取得颜色属性值得到的是 rgb 色,不是我们想要的,所以需要将 rgb 色装换为 十六进制色 ,首先获得rgb色 : var rgb = document.getElem...

乐派电影
2014/03/20
0
0
#ff00ab是什么鬼?1分钟了解色彩

我们经常听到RGB, 特别对于网页设计者,在选颜色的时候,看到的颜色都是 #fff, #34220a这种代码,这些到底是啥呢?有没有可能已看到 #ff0abc 这种代码,大脑就可以浮现是什么样的颜色呢?答案...

xu54
01/04
0
0
php获取图片RGB颜色值的例子

php获取图片RGB颜色值的例子 很多图片站点都会根据用户上传的图片检索出图片的主要颜色值,然后在通过颜色搜索相关的图片。 之前按照网上的方法将图片缩放(或者马赛克)然后遍历每个像素点,然...

mysoftsky
2014/07/29
0
0
android 使用透明色

在ios里面用惯了透明色,view.alpha,感觉很方便。想在android中也设置一下。看看效果: 上面的文字,是TextView,背景是黑色的,但是使用了透明色。 这部分东西,不需要动一点java代码,在布...

华宰
2011/09/07
2.3K
0
jquery获取元素颜色css('color')的值返回RGB。如何转十六进制

css代码如下: a, a:link, a:visited { color:#4188FB; }a:active, a:focus, a:hover { color:#FFCC00; } js代码如下: var link_col = $("a:link").css("color");alert(link_col); 返回的值......

lovethe51cto
2016/03/18
0
0
IOS,十六进制颜色和RGB颜色的宏定义

16进制颜色值宏定义。 //调用 NSString *str = model.Color; NSString *strColor = [str stringByReplacingOccurrencesOfString:@"#" withString:@""]; NSMutableString *tempHex=[[NSMutab......

曹江涛
2016/01/18
125
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

mysql 主从复制中遇到的错误!

。。。。。

万建宁
11分钟前
0
0
DUBBO 详细介绍

摘要: 主要核心部件: Remoting: 网络通信框架,实现了 sync-over-async 和 request-response 消息机制. RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能 Registry: 服务目录框架...

明理萝
22分钟前
0
1
4 个快速的 Python 编译器 for 2018

简评:Python 和其他的解释型语言一样经常被吐槽性能不行,所以开发人员为了提升性能创建了不少编译器,本文则选取其中的四个做了基准测试。 Python 其实是一种相当快的语言,但它并不像编译...

极光推送
25分钟前
0
0
spring boot注册多个MQ服务器的问题

关于注册到多个MQ源的文章已经有很多了,这里记录一下声明queue的坑; 如果使用注册bean的方式声明queue,会导致声明的queue同时被注册到所有的MQ源上; //如果使用下面的声明方式,que...

placeholder
26分钟前
0
0
Java面试基础篇——第九篇:BIO,NIO,AIO的区别

现在IO模型主要分三类:BIO(同步阻塞IO),NIO(同步非阻塞IO),AIO()。 先来看看BIO。 1. BIO 服务端接受到请求后,要指派或新建一个线程去处理客户端的IO请求,直到收到断开连接的指令。这么做...

developlee的潇洒人生
31分钟前
0
0
@RequestMapping @ResponseBody 和 @RequestBody 用法与区别

1.@RequestMapping 国际惯例先介绍什么是@RequestMapping,@RequestMapping 是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为...

特拉仔
33分钟前
1
0
基于 HTML5 结合互联网+ 的 3D 隧道

前言 目前,物资采购和人力成本是隧道业发展的两大瓶颈。比如依靠民间借贷,融资成本很高;采购价格不透明,没有增值税发票;还有项目管控和供应链管理的问题。成本在不断上升,利润在不断下...

xhload3d
35分钟前
0
0
济南小程序热度分析

原文链接:http://www.jnqianle.cn/company/2072.html

tianma3798
36分钟前
1
0
大数据软件

beats 采集 kafka spark hive es grafana zeppelin

ArlenXu
38分钟前
0
0
Mac item2常用快捷键

标签 新建标签:command + t 关闭标签:command + w 切换标签:command + 数字 command + 左右方向键 切换全屏:command + enter 查找:command + f 分屏 水平分屏:command + d 垂直分屏:c...

说回答
41分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部