是否可以为多个对象设置属性(如backgroundColor)?
例如:
#define RedColor [UIColor redColor]
#define BackgroundColor(color) [[self class] setBackgroundColor:Color(color)]
这样我就可以在以下情况下使用它:
[myLabel BackgroundColor(RedColor)];
[myButton BackgroundColor(RedColor)];
答案 0 :(得分:1)
虽然不建议您这样做,但以下代码适用于我:
#define BackgroundColor(color, some_view) [some_view setBackgroundColor:color]
答案 1 :(得分:0)
这是我使用的方法:
Colors.h
。pch
文件,以便将其导入所有标头文件。在Colors.h
中插入以下内容:
// RGB颜色宏
#define RGB(rgbValue) [UIColor \
colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]
//带有alpha的RGB颜色宏
#define RGBA(rgbValue,a) [UIColor \
colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 \
green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
blue:((float)(rgbValue & 0xFF))/255.0 alpha:a]
//颜色样本
#define COLOR_SWATCH_WHITE RGB(0xFFFFFF)
#define COLOR_SWATCH_BLACK RGB(0x000000)
//常数
#define COLOR_BUTTON_TEXT COLOR_SWATCH_BLACK
#define COLOR_BUTTON_BACKGROUND COLOR_SWATCH_WHITE
设置颜色的示例:
[myLabel setTextColor:COLOR_BUTTON_TEXT];
我认为使用'Color swatch'这个方法是一个好主意,因为大多数应用程序都有一组在应用程序中使用的一些颜色。