我想定义一个全局颜色,我可以将其重新用于各种自定义ui单元的下降状态
不确定这是否是正确的方法,但是..
我已经定义了一个名为lightGreyUIColor的类,该类具有此.h文件-
#import <UIKit/UIKit.h>
@interface lightGreyUIColor : UIColor
+ (UIColor*)lightGreyBGColor;
@end
和这个。 m文件-
#import "lightGreyUIColor.h"
@implementation lightGreyUIColor
+ (UIColor*)lightGreyBGColor {
return [UIColor colorWithRed:241.0/255.0 green:241/255.0 blue:241/255.0 alpha:1];
}
@end
我已经在tableview的实现文件中包含lightGreyUIColor.h文件,并尝试将其作为以下对象引用-
cell.backgroundColor = [UIColor lightGreyBGColor];
哪个会为lightgreyBGColor产生未知的类或方法错误,我哪里出错了,并且有比这更好的方法来实现全局样式吗?
您应该创建一个类别,而不是一个子类。这将扩展UIColor类,并向其中添加颜色。
宏怎么样?
您的班级名称是lightGreyUIColor
您需要一个类别。阅读有关here
更新此内容,您现在可以在Asset Catalog中创建自定义颜色,然后在Interface Builder中可以看到这些颜色。看到https://help.apple.com/xcode/mac/current/#/dev10510b1f7