微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – 定义全局颜色

我想定义一个全局颜色,我可以为各种自定义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

我已将lightGreyUIColor.h文件包含在tableview的实现文件中,并尝试将其作为folows引用 –

cell.backgroundColor = [UIColor lightGreyBGColor];

这只会为lightgreyBGColor产生一个没有已知的类或方法错误,我哪里出错了,是否有更好的方法来实现全局样式?

解决方法

您应该创建一个类别,而不是子类.这将扩展UIColor类,并为其添加颜色.

.H

#import <UIKit/UIKit.h>

@interface UIColor (CustomColors)

+ (UIColor *)myColorLightGreyBGColor;

@end

.M

#import "UIColor+CustomColors.h"

@implementation UIColor (CustomColors)



+ (UIColor *)myColorLightGreyBGColor {

    static UIColor *lightGreyBGColor;

    static dispatch_once_t oncetoken;
    dispatch_once(&oncetoken,^{
        lightGreyBGColor = [UIColor colorWithRed:241.0 / 255.0 
                                           green:241.0 / 255.0
                                            blue:241.0 / 255.0 
                                           alpha:1.0];
    });

    return lightGreyBGColor;
}

@end

通过这种方式定义颜色和#importing类别,您可以按照自己的方式应用此自定义颜色.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐