iOS十六进制颜色码的使用

开发过程中我们设计给过来的设计稿经常会是十六进制颜色码,而不是RGB值,这时候就需要转换成RGB一下才能使用了。
可以给UIColor增添一个类别,在类别中拓展转换的方法,这样比较方便调用

#import <UIKit/UIKit.h>

@interface UIColor (hexColor)
+(UIColor *)colorWithHex:(NSInteger)hex;

+(UIColor *)colorWithHex:(NSInteger)hex andAlpha:(float)alpha;
@end

#import "UIColor+hexColor.h"

@implementation UIColor (hexColor)

+(UIColor *)colorWithHex:(NSInteger)hex
{
    return [UIColor colorWithHex:hex andAlpha:1.0];
}
+(UIColor *)colorWithHex:(NSInteger)hex andAlpha:(float)alpha
{
    return [UIColor colorWithRed:((float)((hex & 0xFF0000) >> 16))/255 green:((float)((hex & 0xFF00) >> 8))/255 blue:((float)(hex & 0xFF))/255 alpha:alpha];
}

@end

然后我们可以把设计给过来的十六进制颜色码定义成宏,以后就可以直接使用,比较方便
例如值 ffffff

//例如值 ffffff
//宏定义

define HFffffff [UIColor colorWithHex:0xffffff andAlpha:1.0f]

这里需要注意的一点是设计给过来的ffffff,我们使用时需要在前面加上0x表示是16进制的值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容