iOS 直接使用16进制颜色
在做iOS开发时,一般我们会吸色,就是产品给的图我们一般会吸色,但是最近吸色时候,老大说有较大的颜色偏差,所以要求我们直接使用UI给出的额16进制颜色,你也可以搜索《RGB颜色值转换成十六进制颜色码:》先把16进制颜色转换为RGB的然后再写,但是这样有点影响开发速度,所以呢就写了一个UIColor的分类,直接使用16进制的颜色。
UIColor的分类DLColorChange .h文件
#import <UIKit/UIKit.h>@interface UIColor (DLColorChange)// 颜色转换:iOS中(以#开头)十六进制的颜色转换为UIColor(RGB) + (UIColor *) colorWithHexString: (NSString *)color;@end
UIColor的分类DLColorChange .m文件
#import "UIColor+DLColorChange.h"@implementation UIColor (DLColorChange)+ (UIColor *) colorWithHexString: (NSString *)color {NSString *cString = [[color stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];// String should be 6 or 8 charactersif ([cString length] < 6) {return [UIColor clearColor];}// 判断前缀if ([cString hasPrefix:@"0X"])cString = [cString substringFromIndex:2];if ([cString hasPrefix:@"#"])cString = [cString substringFromIndex:1];if ([cString length] != 6)return [UIColor clearColor];// 从六位数值中找到RGB对应的位数并转换 NSRange range;range.location = 0;range.length = 2;//R、G、BNSString *rString = [cString substringWithRange:range];range.location = 2;NSString *gString = [cString substringWithRange:range];range.location = 4;NSString *bString = [cString substringWithRange:range];// Scan valuesunsigned int r, g, b;[[NSScanner scannerWithString:rString] scanHexInt:&r];[[NSScanner scannerWithString:gString] scanHexInt:&g];[[NSScanner scannerWithString:bString] scanHexInt:&b];return [UIColor colorWithRed:((float) r / 255.0f) green:((float) g / 255.0f) blue:((float) b / 255.0f) alpha:1.0f]; }@end
我们可以把
#import "UIColor+DLColorChange.h"
写在pch文件中,这样我们全局就可以用。调用如下
self.view.backgroundColor=[UIColor colorWithHexString:@"#edae48"];
转载于:https://www.cnblogs.com/peaker-wu/p/5694399.html
iOS 直接使用16进制颜色相关推荐
- ios扩展16进制颜色
iOS开发一般都是用到RGB颜色,美工给我们作图的时候往往给我们的色值都是十六进制的颜色如 #ff0000,如果先把16进制转换为RGB 的10 进制那将是非常麻烦的事,我们可以为 UIColor 添 ...
- iOS 将16进制颜色转换成UIColor
很多地方我们都使用16进制颜色,但iPhone使用的是UIColor对象,不直接支持16进制颜色,为此,需要我们手动将16进制颜色转换为UIColor - (UIColor *) hexStringT ...
- iOS之颜色的调用、显示16进制颜色、渐变色
十六进制颜色 #import <UIKit/UIKit.h>NS_ASSUME_NONNULL_BEGIN@interface UIColor (HexColor) + (UIColor ...
- iOS学习—UIColor使用16进制颜色
1.实现思路 先把16进制转换为RGB然后再书写,为了提高开发速度,本文使用UIColor的分类,直接使用16进制颜色,例:self.view.backgroundColor = [UIColor h ...
- 16进制颜色识别和搭配规律
在CSS中,经常会用到16进制的颜色来设置文本.背景.边框等颜色,但是对于一个纯前端来讲,16进制颜色的识别和搭配可能会较为陌生了 ,本文简单介绍一下16进制颜色的一些规律 16进制颜色的数值意义: ...
- POI 自定义16进制颜色导出
今天导入一个Excel 要求什么格式导入就怎么显示,包括字体 颜色,还要怎么导出.这个poi导入的是16进制颜色,导出比较麻烦.具体参考以下代码吧 private CellStyle createSt ...
- 16进制颜色识别和搭配规律 (实用)
原文出处:https://blog.csdn.net/weixin_39037804/article/details/100266599 在CSS中,经常会用到16进制的颜色来设置文本.背景.边框等颜 ...
- rgb与16进制颜色是如何相互转换的?
在css中定义颜色可以使用rgb颜色值,例:rgb(182, 0, 35):也可以使用16进制颜色值,例:#B60023.不管是rgb(182, 0, 35),还是#B60023都表示了同一种颜色,其 ...
- Android内部颜色转16进制颜色
我们在Avtivity中设置控件的背景色的时候,会发现setBackgroundColor()居然需要int格式的颜色,本来以为是10进制的颜色,后来实验发现,不是10进制的,因为它是有负数的,它的范 ...
最新文章
- 找出文件1中有而文件2中没有的数据
- C++中的vector的用法
- java-web中的分层1-dao
- C#使用log4net记录日志
- editor修改样式 vue_vue-quill-editor的使用及个性化定制操作
- LinkedList类源码浅析(二)
- 地牢房间迷宫走廊生成(二),Python实现洪水法、完美迷宫
- java二期_享学二期java架构师
- STL stack 容器
- 从高量到高质,私域流量的变革与发展
- torch的使用笔记
- 【2012.1.24更新】不要再在网上搜索eclipse的汉化包了!
- Linux正则表达式
- 计算机computer英语划分音节,computer是什么意思
- 计算机主机配置一般有机箱主板cpu,电脑配置参数详解教程
- 锋利的jQuery读书笔记(一)
- 乱舞之双刀--mhp2怪物猎人双刀攻略…
- java——记录一次条形码、二维码、订单自动生成的制作
- appinventor跑酷游戏_基于APPInventor的一款益智游戏的设计与实现
- java 正斜杠与反斜杠之分
热门文章
- ue4导入倾斜摄影_倾斜摄影建模干货|还怕搞不定CC空三?这里只要5分钟……
- .net自定义控件Control、WebControl、CompositeControl
- Effective C++: 06继承与面向对象设计
- linux安装mongodb(设置非root用户和开机启动)
- bzoj3524 [Poi2014]Couriers
- posix thread线程
- 第十讲:Obj-C Blocks 应用
- SharePoint【学习笔记】-- SharePoint 2010 技术参数整理
- spring 多线程 事务 源码解析(一)
- jfinal项目部署服务器,jfinal undertow项目再集成JDK,一键安装系统服务,让部署再快一点...