您可以在.pch
项目文件中定义宏,但这通常不是一个好主意,因为它会产生难以阅读、维护和调试的代码。
在您的具体情况下,我宁愿在UIColor
.
这是一个带有额外内容的实现,可能会派上用场。
UIColor+Extra.h
#import <UIKit/UIKit.h>
@interface UIColor (Extra)
+ (instancetype)extra_colorWith255BasedRed:(NSUInteger)red green:(NSUInteger)green blue:(NSUInteger)blue;
+ (instancetype)extra_colorWith255BasedRed:(NSUInteger)red green:(NSUInteger)green blue:(NSUInteger)blue alpha:(CGFloat)alpha;
+ (instancetype)extra_colorWithHex:(NSInteger)hex;
@end
UIColor+Extra.m
#import "UIColor+Extra.h"
@implementation UIColor (Extra)
+ (instancetype)extra_colorWith255BasedRed:(NSUInteger)red green:(NSUInteger)green blue:(NSUInteger)blue {
return [self colorWith255BasedRed:red green:green blue:blue alpha:1.0];
}
+ (instancetype)extra_colorWith255BasedRed:(NSUInteger)red green:(NSUInteger)green blue:(NSUInteger)blue alpha:(CGFloat)alpha {
return [self colorWithRed:red/255.0f green:green/255.0f blue:blue/255.0f alpha:alpha];
}
+ (instancetype)extra_colorWithHex:(NSInteger)hex {
return [UIColor colorWith255BasedRed:((hex & 0xFF0000) >> 16) green:((hex & 0xFF00) >> 8) blue:(hex & 0xFF)];
}
@end
然后只需放置
#import "UIColor+Extra.h"
在您的.pch
文件中并在其他地方使用它。
例子
UIColor * cyan = [UIColor extra_colorWithHex:0x00FFFF];
UIColor * magenta = [UIColor extra_colorWith255BasedRed:255 green:0 blue:255];