iOS 设置#ffff 这种颜色
UI给图的时候给的是#f2f2f2 让我设置。没有你要的rgb。 所以只能自行解决封装了代码
HexColors.h
#import "TargetConditionals.h" #if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR #import <UIKit/UIKit.h> #define HXColor UIColor #else #import <Cocoa/Cocoa.h> #define HXColor NSColor #endif @interface HXColor (HexColorAddition) + (HXColor *)hx_colorWithHexString:(NSString *)hexString; + (HXColor *)hx_colorWithHexString:(NSString *)hexString alpha:(CGFloat)alpha; + (HXColor *)hx_colorWith8BitRed:(NSInteger)red green:(NSInteger)green blue:(NSInteger)blue; + (HXColor *)hx_colorWith8BitRed:(NSInteger)red green:(NSInteger)green blue:(NSInteger)blue alpha:(CGFloat)alpha; @end
HexColors.m
#import "HexColors.h" @implementation HXColor (HexColorAddition) + (HXColor *)hx_colorWithHexString:(NSString *)hexString { // Check for hash and add the missing hash ]) { hexString = [NSString stringWithFormat:@"#%@", hexString]; } CGFloat alpha = 1.0; == hexString.length || == hexString.length) { NSString * alphaHex = [hexString substringWithRange:NSMakeRange(, == hexString.length ? : )]; == alphaHex.length) alphaHex = [NSString stringWithFormat:@"%@%@", alphaHex, alphaHex]; hexString = [NSString stringWithFormat: == hexString.length ? : ]]; unsigned alpha_u = [[self class] hx_hexValueToUnsigned:alphaHex]; alpha = ((CGFloat) alpha_u) / 255.0; } return [[self class] hx_colorWithHexString:hexString alpha:alpha]; } + (HXColor *)hx_colorWithHexString:(NSString *)hexString alpha:(CGFloat)alpha { ) { return nil; } // Check for hash and add the missing hash ]) { hexString = [NSString stringWithFormat:@"#%@", hexString]; } // check for string length != hexString.length && != hexString.length) { NSString *defaultHex = [NSString stringWithFormat:@"0xff"]; unsigned defaultInt = [[self class] hx_hexValueToUnsigned:defaultHex]; HXColor *color = [HXColor hx_colorWith8BitRed:defaultInt green:defaultInt blue:defaultInt alpha:1.0]; return color; } // check for 3 character HexStrings hexString = [[self class] hx_hexStringTransformFromThreeCharacters:hexString]; NSString *redHex = [NSString stringWithFormat:, )]]; unsigned redInt = [[self class] hx_hexValueToUnsigned:redHex]; NSString *greenHex = [NSString stringWithFormat:, )]]; unsigned greenInt = [[self class] hx_hexValueToUnsigned:greenHex]; NSString *blueHex = [NSString stringWithFormat:, )]]; unsigned blueInt = [[self class] hx_hexValueToUnsigned:blueHex]; HXColor *color = [HXColor hx_colorWith8BitRed:redInt green:greenInt blue:blueInt alpha:alpha]; return color; } + (HXColor *)hx_colorWith8BitRed:(NSInteger)red green:(NSInteger)green blue:(NSInteger)blue { return [[self class] hx_colorWith8BitRed:red green:green blue:blue alpha:1.0]; } + (HXColor *)hx_colorWith8BitRed:(NSInteger)red green:(NSInteger)green blue:(NSInteger)blue alpha:(CGFloat)alpha { HXColor *color = nil; #if (TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE) color = [HXColor colorWithRed:( green:( blue:( alpha:alpha]; #else color = [HXColor colorWithCalibratedRed:( green:( blue:( alpha:alpha]; #endif return color; } + (NSString *)hx_hexStringTransformFromThreeCharacters:(NSString *)hexString { ) { hexString = [NSString stringWithFormat:@"#%1$c%1$c%2$c%2$c%3$c%3$c", [hexString characterAtIndex:], [hexString characterAtIndex:], [hexString characterAtIndex:]]; } return hexString; } + (unsigned)hx_hexValueToUnsigned:(NSString *)hexValue { unsigned value = ; NSScanner *hexValueScanner = [NSScanner scannerWithString:hexValue]; [hexValueScanner scanHexInt:&value]; return value; } @end
调用
self.backgroundColor = [HXColor hx_colorWithHexString:@"ff5a60"];
iOS 设置#ffff 这种颜色的更多相关文章
- ios 设置状态栏文本颜色为白色
1,在.plist文件中添加一个键值对:设置View controller-based status bar appearance的值为NO 2,在方法中 - (BOOL)application:(U ...
- iOS 设置状态栏的颜色
1.在plist文件中设置如下属性: 2.在delegate中设置 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarSt ...
- iOS 设置不同的字体颜色
//设置不同字体颜色 -(void)fuwenbenLabel:(UILabel *)labell FontNumber:(UIFont *)font AndRange:(NSRange)range ...
- iOS之 状态栏字体颜色的设置
前一段时间接手一个项目后,熟悉的过程中发现了不少问题,其中有一个就是关于状态栏的问题. 我们都知道:状态栏字体颜色在不同界面不一样的,原因是系统设置的时候把状态栏的字体颜色的界面控制器设置的yes. ...
- iOS下使状态栏颜色与H5中背景色一致
iOS 中有的页面也能会内嵌WebView,然后WebView中用H5做了一个导航,而iOS 中状态栏的颜色很难调整的与H5中导航颜色一致.如下图所示: 其实出现这种原因,主要是因为使用16进制颜色, ...
- iOS 设置View阴影
iOS 设置View投影 需要设置 颜色 阴影半径 等元素 UIView *shadowView = [[UIView alloc] init]; shadowView.frame = CGRectM ...
- 设置statusBar状态栏颜色
设置statusBar的[前景部分] 简单来说,就是设置显示电池电量.时间.网络部分标示的颜色, 这里只能设置两种颜色: 默认的黑色(UIStatusBarStyleDefault) 白色(UISta ...
- 设置placeholder字体颜色
/*设置placeholder字体颜色*/::-webkit-input-placeholder{ color: #FFF;}:-ms-input-placeholder{ color: #FFF;} ...
- IOS中十六进制的颜色转换为UIColor
IOS中十六进制的颜色转换为UIColor #pragma mark - 颜色转换 IOS中十六进制的颜色转换为UIColor + (UIColor *) colorWithHexString: (N ...
随机推荐
- jquery中:input和input的区别分析
:input表示选择表单中的input,select,textarea,button元素,input仅仅选择input元素. <html> <head> <style&g ...
- eclipse中安装配置maven
1.首先说一下在windows中安装maven.非常简单... 到http://maven.apache.org/download.html中下载maven,截止笔者发文时,maven最新版本为mav ...
- Laravel邮件发送问题小解
在Laravel中已经有内置了发送邮件的功能,通过 Mail::send 可发送邮件,但要使用这个函数必须先进行相关配置. 在 /app/config/mail.php 中设置你的邮件参数,如下: 1 ...
- TCP/IP协议头部结构体(网摘小结)(转)
源:TCP/IP协议头部结构体(网摘小结) TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #de ...
- javascript中最常用的方法
平时在工作中时常需要一些方法,下面列举几个最常用的几个方法. 1. indexOf(searchvalue,fromindex) 该方法用于查找一个字符串是否包含了另一个字符串 indexOf() 方 ...
- 组织Golang代码
本月初golang官方blog(需要自己搭梯子)上发布了一篇文章,简要介绍了近几个月Go在一 些技术会议上(比如Google I/O.Gopher SummerFest等)的主题分享并伴有slide链 ...
- FATFS外置UNICODE GBK双向转换码表(转)
源:FATFS外置UNICODE GBK双向转换码表 将UtoG,GtoU双向码表放到存储卡里面实现长文件名,因为FATFS长文件名需要unicode支持, 首先将UtoG.sys,GtoU.sys两 ...
- MySql5.6设置慢查询
---恢复内容开始--- 在my.cnf中 mysqld节点下 #开启慢查询 slow_query_log = ON #设置超时时间 slow_launch_time = 2 #记录日志 slow_q ...
- 怎样编制excel序列目录
怎样编制序列目录 原帖内容:http://www.excelpx.com/forum.php?mod=viewthread&tid=164190&extra=%26page%3D1&a ...
- IOS开发-UI学习-delegate(代理)的使用,键盘消失
代理是IOS开发中用到的一种设计模式.今天做了一个代理的小练习: 以下项目实现了两个页面之间的相互切换,并且在切换页面的时候完成了从一个页面往另一个页面的传值.从主页面往其他页面传值是容易的,但是反过 ...