iOS Xib UILabel 统一颜色配置

2021-07-15  本文已影响0人  赵哥窟

在利用Xib开发的过程,UILabel可以直接在Xib上设置,所见即所得非常方便,但是如果颜色值需要改变就需要一个一个页面修改,非常麻烦。网上搜索了下好像没有找到很好的解决方案。下面分享一下自己在项目的方案仅供参考!

解决办法一

Xib上每个UILabel连线用代码统一设置,这样配置一个颜色值的宏,如果有变动统一修改颜色值即可,不方便的地方就是麻烦,如果界面UILabel多连线多。

#ifndef ColorConfig_h
#define ColorConfig_h

#define color_13234C  @"13234C"
#define color_818FB4  @"818FB4"
#define color_2974FF  @"2974FF"
#define color_FF6941  @"FF6941"
#define color_0FB167  @"0FB167"
#define color_F2F6F9  @"F2F6F9"
#define color_0FB167  @"0FB167"
#define color_FFBD2F  @"FFBD2F"
#define color_999999  @"999999"

#endif /* ColorConfig_h */
解决办法二

自定义一个颜色值对应的UILabel

#import "UILabel_13234C.h"

@implementation UILabel_13234C

- (instancetype)initWithCoder:(NSCoder *)aDecoder
{
    self = [super initWithCoder:aDecoder];
    if (self) {
        [self initTextColor];
    }
    return self;
}

- (void)initTextColor{
    self.textColor = [UIColor getColorWithHexString:color_13234C];
}

@end

Xib上UILabel直接继承就可以,如果有颜色值变动,修改自定义的颜值即可,非常方便。

左图是Xib上设置的颜色值,右边是运行的颜色值,所以即使在Xib上设置了颜色值也不影响。最后还是变成代码设置的颜色值。


截屏2021-07-15 09.54.20.png
解决办法3

直接在Assets.xcassets 设置颜色值


截屏2021-07-19 10.59.52.png

使用的时候直接选择更方便


截屏2021-07-19 11.01.54.png

感谢Albert88888分享的解决办法。
个人感觉解决办法3比较好用,所见即所得很直观的看到颜色。

如果有其他好的解决办法烦请告知一下。

上一篇下一篇

猜你喜欢

热点阅读