用法很简单,直接创建一个UIColor的扩展文件,添加对应的方法,在代码中需要用到设置颜色那块,直接调用该方法即可
- @interface UIColor (extension)
- + (UIColor*) colorWithHex:(NSInteger)hexValue alpha:(CGFloat)alphaValue;
- + (UIColor*) colorWithHex:(NSInteger)hexValue;
- + (NSString *) hexFromUIColor: (UIColor*) color;
- @end
- @implementation UIColor (extension)
- + (UIColor*) colorWithHex:(NSInteger)hexValue alpha:(CGFloat)alphaValue
- {
- return [UIColor colorWithRed:((float)((hexValue & 0xFF0000) >> 16))/255.0
- green:((float)((hexValue & 0xFF00) >> 8))/255.0
- blue:((float)(hexValue & 0xFF))/255.0 alpha:alphaValue];
- }
- + (UIColor*) colorWithHex:(NSInteger)hexValue
- {
- return [UIColor colorWithHex:hexValue alpha:1.0];
- }
- + (NSString *) hexFromUIColor: (UIColor*) color {
- if (CGColorGetNumberOfComponents(color.CGColor) < 4) {
- const CGFloat *components = CGColorGetComponents(color.CGColor);
- color = [UIColor colorWithRed:components[0]
- green:components[0]
- blue:components[0]
- alpha:components[1]];
- }
- if (CGColorSpaceGetModel(CGColorGetColorSpace(color.CGColor)) != kCGColorSpaceModelRGB) {
- return [NSString stringWithFormat:@"#FFFFFF"];
- }
- return [NSString stringWithFormat:@"#%x%x%x", (int)((CGColorGetComponents(color.CGColor))[0]*255.0),
- (int)((CGColorGetComponents(color.CGColor))[1]*255.0),
- (int)((CGColorGetComponents(color.CGColor))[2]*255.0)];
- }
- @end