iOS中有时候UI给的一个色号就像 #54e1b7 这个,而我们一般设置颜色都是根据RBG来设置的,所以这里需要把这个16进制的色号转为RGB值,这里我们就使用一下的方法来调用设置颜色。
1 + (UIColor *)getColor:(NSString *)hexColor 2 { 3 if (hexColor == nil || hexColor.length == 0) { 4 NSLog(@"color string is nil."); 5 return [UIColor blackColor]; 6 } 7 unsigned int red,green,blue; 8 NSRange range; 9 range.length = 2; 10 11 range.location = 0; 12 NSString *deHexColor = [hexColor substringWithRange:range]; 13 [[NSScanner scannerWithString:deHexColor] scanHexInt:&red]; 14 15 range.location = 2; 16 deHexColor = [hexColor substringWithRange:range]; 17 [[NSScanner scannerWithString:deHexColor] scanHexInt:&green]; 18 19 range.location = 4; 20 deHexColor = [hexColor substringWithRange:range]; 21 [[NSScanner scannerWithString:deHexColor] scanHexInt:&blue]; 22 23 return [UIColor colorWithRed:(float)(red/255.0f) green:(float)(green / 255.0f) blue:(float)(blue / 255.0f) alpha:1.0f]; 24 }