2025年十六进制颜色转UIColor

十六进制颜色转UIColor很多地方我们都使用 16 进制颜色 但 iPhone 使用的是 UIColor 对象 不直接支持 16 进制颜色 为此 需要我们手动将 16 进制颜色转换为 UIColor UIColor getColor NSString hexColor unsigned int red green blue

大家好,我是讯享网,很高兴认识大家。

很多地方我们都使用16进制颜色,但iPhone使用的是UIColor对象,不直接支持16进制颜色,为此,需要我们手动将16进制颜色转换为UIColor

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

{

unsigned int red,green,blue;

NSRange range;

range.length = 2;

 

range.location = 0;

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

 

range.location = 2;


讯享网

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

 

range.location = 4;

[[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:1.0f];

}

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


一个面试题:使用内联函数把@“#ff3344”转成UIColor

- (UIColor *) stringTOColor:(NSString *)str { if (!str || [str isEqualToString:@""]) { return nil; } unsigned red,green,blue; NSRange range; range.length = 2; range.location = 1; [[NSScanner scannerWithString:[str substringWithRange:range]] scanHexInt:&red]; range.location = 3; [[NSScanner scannerWithString:[str substringWithRange:range]] scanHexInt:&green]; range.location = 5; [[NSScanner scannerWithString:[str substringWithRange:range]] scanHexInt:&blue]; UIColor *color= [UIColor colorWithRed:red/255.0f green:green/255.0f blue:blue/255.0f alpha:1]; return color; }

讯享网

小讯
上一篇 2025-01-05 17:19
下一篇 2025-01-23 21:23

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/71816.html