读书人

iOS工具种之16进制颜色转为UIColor

发布时间: 2012-09-04 14:19:30 作者: rapoo

iOS工具类之16进制颜色转为UIColor
将16进制颜色如#FF0000,转换为UIColor:

#define DEFAULT_VOID_COLOR [UIColor whiteColor]+ (UIColor *)colorWithHexString:(NSString *)stringToConvert{    NSString *cString = [[stringToConvert stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];            if ([cString length] < 6)         return DEFAULT_VOID_COLOR;    if ([cString hasPrefix:@"#"])         cString = [cString substringFromIndex:1];    if ([cString length] != 6)         return DEFAULT_VOID_COLOR;        NSRange range;    range.location = 0;    range.length = 2;    NSString *rString = [cString substringWithRange:range];        range.location = 2;    NSString *gString = [cString substringWithRange:range];        range.location = 4;    NSString *bString = [cString substringWithRange:range];            unsigned int r, g, b;    [[NSScanner scannerWithString:rString] scanHexInt:&r];    [[NSScanner scannerWithString:gString] scanHexInt:&g];    [[NSScanner scannerWithString:bString] scanHexInt:&b];        return [UIColor colorWithRed:((float) r / 255.0f)                           green:((float) g / 255.0f)                            blue:((float) b / 255.0f)                           alpha:1.0f];}

读书人网 >操作系统

热点推荐