iOS 十六进制转化为RGB值

忙完了三个周,紧锣密鼓的完成两个紧急项目,一个为奥运做准备给公司用的竞猜APP,一个给省社保局和市社保局领导用的会务APP,在此期间没什么时间写博客,写写最近的心情吧,来威海出差是我觉得幸运的事,因为我的老家就是威海,但是很忙很忙,周六上午只休了半天假,回了趟家,坐了一个小时,满是遗憾的回来了,感觉上班了之后回家的时间真的很少,想想我的家人,我就有点难过。虽然在家的时间里也没干什么,但就是这种静谧轻松地日子让我觉得轻松加愉快,没有巨大的工作压力,不需要坚强独立,不需要一个人承受所有···


明天就要离开威海了,想想来了趟威海光忙着工作了,对于我们这种出身不好的孩子,工作就是生活,挣钱就是理想,我希望有一天我能够实现财务自由,带我的家人一起出去旅行··· 那要有多遥远··· 还是努力吧。


附iOS中实现16进制直接表示颜色的UIColor类目

UIColor + NotRGB.h

@interface UIColor (NotRGB)
+ (UIColor *)colorWithRed:(NSInteger)red green:(NSInteger)green blue:(NSInteger)blue;

/**
 *  16进制转uicolor
 *
 *  @param color @"#FFFFFF" ,@"OXFFFFFF" ,@"FFFFFF"
 *
 *  @return uicolor
 */
+ (UIColor *)colorWithHexString:(NSString *)color;
@end

UIColor+NotRGB.m

+ (UIColor *)colorWithHexString:(NSString *)color
{
    NSString *cString = [[color stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];
    
    // String should be 6 or 8 characters
    if ([cString length] < 6) {
        return [UIColor clearColor];
    }
    
    // strip 0X if it appears
    if ([cString hasPrefix:@"0X"])
        cString = [cString substringFromIndex:2];
    if ([cString hasPrefix:@"#"])
        cString = [cString substringFromIndex:1];
    if ([cString length] != 6)
        return [UIColor clearColor];
    
    // Separate into r, g, b substrings
    NSRange range;
    range.location = 0;
    range.length = 2;
    
    //r
    NSString *rString = [cString substringWithRange:range];
    
    //g
    range.location = 2;
    NSString *gString = [cString substringWithRange:range];
    
    //b
    range.location = 4;
    NSString *bString = [cString substringWithRange:range];
    
    // Scan values
    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];
}

@end


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值