XIb顏色設置
使用場景 ->>
- 我們在實際開發(fā)過程中,我們一般都是 使用的RGB和Hex顏色
來設置的
1. 我們可以通過 XIb中來設置RGB顏色
-
但是需要注意的是:XIB中的顏色和實際的顏色 在有顏色重疊的情況下 有出現(xiàn)點偏差
eg:
第一步
RGB
2. 通過代碼 實現(xiàn)RGB 和 Hex顏色
- RGB (通過宏定義來實現(xiàn))
//不透明
#define RGB(r,g,b) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:1.0f]
//帶透明的
#define RGBA(r,g,b,a) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:a]
2 .Hex顏色(UIColor的擴展)
.h文件
#import <UIKit/UIKit.h>
@interface UIColor (tools)
+ (UIColor *)colorWithHexString:(NSString *)hexString;
+ (UIColor *)colorWithHexString:(NSString *)hexString alpha:(CGFloat)alpha;
@end
.m實現(xiàn)文件
#import "UIColor+tools.h"
@implementation UIColor (tools)
/// 十六進制轉換 + 不透明
+ (UIColor *)colorWithHexString:(NSString *)hexString
{
return [self colorWithHexString:hexString alpha:1.0f];
}
// 十六進制轉換 + 透明度
+ (UIColor *)colorWithHexString:(NSString *)hexString alpha:(CGFloat)alpha
{
unsigned int red, green, blue;
NSRange range;
range.length =2;
range.location =0;
[[NSScanner scannerWithString:[hexString substringWithRange:range]]scanHexInt:&red];
range.location =2;
[[NSScanner scannerWithString:[hexString substringWithRange:range]]scanHexInt:&green];
range.location =4;
[[NSScanner scannerWithString:[hexString substringWithRange:range]]scanHexInt:&blue];
return [UIColor colorWithRed:(float)(red/255.0f)green:(float)(green/255.0f)blue:(float)(blue/255.0f)alpha:alpha];
}
@end