首先,定义一个宏,表示颜色:
#define RGBACOLOR(r,g,b,a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:(a)]
但是UI很多时候会给我们16进制的色号,有时候我们需要的是10进制的RGB,怎么办?
灰常简单:我们只需要知道计算机是怎么计算乘法和除法就行了:
乘数、被乘数都要先转化为二进制
NSLog(@"%.2lf",0X1A /255.0);
NSLog(@"%.2lf",26 /255.0);
这两个打印函数打印出来的值是一样的。
也就是说我们可以直接用16进制的色号进行颜色设置;
如果颜色是#(0X0E,0X60,0X98,1),我们可以直接设置成 RGBACOLOR(0X0E,0X60,0X98,1),当然如果颜色常用,可以定义成:
#define MainBlueColor RGBACOLOR(0X0E,0X60,0X98,1)
是不是灰常简单,不需要去找其他复杂的函数。