您的位置:首页 > 移动开发 > Objective-C

objective-C把16进制的颜色转换成RGB,包括透明度哦~

2016-04-24 12:19 771 查看
最近在开发中遇到了16进制的颜色转换成RGB的问题,我在网上看了好多感觉没有适合自己的,现在我根据我遇到的问题为大家分享下,希望对遇到同样问题的小伙伴有帮助。

#FFFFFFFF其中#后面的前2位为16进制表示透明度的,后面的6位表示颜色;

-(UIColor *) getColor:(NSString *)hexColor

{

unsigned int alpha, red, green, blue;

NSRange range;

range.length =2;

range.location =1;

[[NSScanner scannerWithString:[hexColor substringWithRange:range]]scanHexInt:&alpha];//透明度

range.location =3;

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

range.location =5;

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

range.location =7;

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

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


}

//使用

[self getColor:@"#FFFFFFFF"];

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: