iOS 16进制颜色字符串转换成可以正常使用的UIColor
2015-11-14 09:21
459 查看
“#ffffff”类型的十六进制字符串转换成数字
分段截取计算UIColor的RGB 直接返回颜色
分段截取计算UIColor的RGB 直接返回颜色
传入字符串后分段截取调用字符串转换Int的方法
[code]- (UIColor *)getColor:(NSString *)hexColor { NSString *string = [hexColor substringFromIndex:1];//去掉#号 unsigned int red,green,blue; NSRange range; range.length = 2; range.location = 0; /* 调用下面的方法处理字符串 */ red = [self stringToInt:[string substringWithRange:range]]; range.location = 2; green = [self stringToInt:[string substringWithRange:range]]; range.location = 4; blue = [self stringToInt:[string substringWithRange:range]]; return [UIColor colorWithRed:(float)(red/255.0f) green:(float)(green / 255.0f) blue:(float)(blue / 255.0f) alpha:1.0f]; }
截取后的字符串处理
[code]- (int)stringToInt:(NSString *)string { unichar hex_char1 = [string characterAtIndex:0]; /* 两位16进制数中的第一位(高位*16) */ int int_ch1; if (hex_char1 >= '0' && hex_char1 <= '9') int_ch1 = (hex_char1 - 48) * 16; /* 0 的Ascll - 48 */ else if (hex_char1 >= 'A' && hex_char1 <='F') int_ch1 = (hex_char1 - 55) * 16; /* A 的Ascll - 65 */ else int_ch1 = (hex_char1 - 87) * 16; /* a 的Ascll - 97 */ unichar hex_char2 = [string characterAtIndex:1]; /* 两位16进制数中的第二位(低位) */ int int_ch2; if (hex_char2 >= '0' && hex_char2 <='9') int_ch2 = (hex_char2 - 48); /* 0 的Ascll - 48 */ else if (hex_char1 >= 'A' && hex_char1 <= 'F') int_ch2 = hex_char2 - 55; /* A 的Ascll - 65 */ else int_ch2 = hex_char2 - 87; /* a 的Ascll - 97 */ return int_ch1+int_ch2; }
方法使用
[code]/* 直接调用即可 */ self.backgroundColor = [self getColor:@"#ff5c6f"];
相关文章推荐
- IOS 给UIView 设置背景图片
- CF--B - Queries on a String
- iOS9 UICollectionView新推出的Item排序方法
- iOS中 UITabBarController中自定义UITabBar
- iOS中 UITabBarController中自定义UITabBar
- Educational Codeforces Round 1 B. Queries on a String
- Definition Questions
- Leetcode Range Sum Query 2D - Immutable
- Leetcode Range Sum Query - Immutable
- 10005---servlet request请求对象常用方法总结
- GPUImage API文档之GLProgram类
- iOS之 基于UIImageView的图片浏览器
- poj2299 Ultra-QuickSort
- POJ - 1986 Distance Queries(离线Tarjan算法)
- 关于UEdiutor文本编辑器。前台展示分文字的问题
- OS X下UNIX环境高级编程(第三版)学习日志-第一章ChapterI,编译apue包与第一个例程
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动
- UE4蓝图案例:制作按下键盘F键改变场景中模型的颜色
- iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
- 在T-SQL语句中访问远程数据库(openrowset/opendatasource/openquery)