美文网首页
iOS开发 RGBA转16进制

iOS开发 RGBA转16进制

作者: 喜剧收尾_XWX | 来源:发表于2020-04-16 20:34 被阅读0次

代码

  • 当hexString = @"ffffff",默认的alpha值为1
  • 当hexString = @"ffffff7f",则alpha值为0.5
+ (UIColor *)colorWithString:(NSString *)hexString {
    NSString *hex = [NSString stringWithString:hexString];
    if ([hex hasPrefix:@"#"]) hex = [hex substringFromIndex:1];
    if (hex.length == 6) {
        hex = [hex stringByAppendingString:@"FF"];
    } else if (hex.length != 8) return nil;
    uint32_t rgba;
    NSScanner *scanner = [NSScanner scannerWithString:hex];
    [scanner scanHexInt:&rgba];
    return [UIColor colorWithRed:((rgba >> 24)&0xFF) / 255. green:((rgba >> 16)&0xFF) / 255. blue:((rgba >> 8)&0xFF) / 255. alpha:(rgba&0xFF) / 255.];
}

十六进制alpha含义

Opacity % 255 Step 2 digit HEX prefix
0% 0.00 00
5% 12.75 0C
10% 25.50 19
15% 38.25 26
20% 51.00 33
25% 63.75 3F
30% 76.50 4C
35% 89.25 59
40% 102.00 66
45% 114.75 72
50% 127.50 7F
55% 140.25 8C
60% 153.00 99
65% 165.75 A5
70% 178.50 B2
75% 191.25 BF
80% 204.00 CC
85% 216.75 D8
90% 229.50 E5
95% 242.25 F2
100% 255.00 FF\

相关文章

网友评论

      本文标题:iOS开发 RGBA转16进制

      本文链接:https://www.haomeiwen.com/subject/afzdvhtx.html