ios中十六进制颜色转UIColor

来源:互联网 发布:android入门编程视频 编辑:程序博客网 时间:2024/05/16 10:50

16进制颜色使用广泛且方便,但ios使用的是UIColor对象,不直接支持16进制颜色,因此,在ios开发中如果需要使用16进制颜色值则要手动将16进制颜色转换为UIColor对象


下面提供一个将16进制颜色值转换成UICoror对象的函数


- (UIColor *)getUIColor:(NSString*)hexColorString

{

unsigned int red,green,blue;

NSRange range;

range.length = 2;

 

range.location = 0;

[[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&red];

 

range.location = 2;

[[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&green];

 

range.location = 4;

[[NSScanner scannerWithString:[hexColorString substringWithRange:range]]scanHexInt:&blue];


//要进行颜色的RGB设置,要进行对255.0的相除(与其他语言不同)

return [UIColor colorWithRed:(float)(red/255.0f)green:(float)(green / 255.0f) blue:(float)(blue / 255.0f)alpha:1.0f];


}


例子:用16进制颜色值#FF0000设置view的背景


[self.view setBackgroundColor:[self getUIColor:@"FF0000"]];


0 0