iOS 统一设置UI公共参数的思路

通过设置UI单例类控制APP内的样式变化.样式的属性为只读.

#import <Foundation/Foundation.h>

@interface AlivcUIConfig : NSObject

+ (instancetype)shared;

/**
 背景颜色
 */
@property (strong, nonatomic, readonly) UIColor *kAVCBackgroundColor;

/**
 系统色
 */
@property (strong, nonatomic, readonly) UIColor *kAVCThemeColor;

@end
#import "AlivcUIConfig.h"
#import "UIColor+AlivcHelper.h"

static AlivcUIConfig *sharedIns = nil;

@implementation AlivcUIConfig

+ (instancetype)shared{
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        if (!sharedIns) {
            sharedIns = [[AlivcUIConfig alloc]_init];
        }
    });
    return sharedIns;
}

- (instancetype)init{
    @throw [NSException exceptionWithName:@"AlivcUIConfig init error" reason:@"'shared' to get instance." userInfo:nil];
    return [super init];
}

- (instancetype)_init {
    self = [super init];
    if (self) {
        _kAVCBackgroundColor = [UIColor colorWithHexString:@"1e222d"];
        _kAVCThemeColor = [UIColor colorWithHexString:@"00c1de"];
    }
    return self;
}

@end

使用方式

    self.view.backgroundColor = [AlivcUIConfig shared].kAVCBackgroundColor;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容