UIColor不匹配RGB

Chr*_*ris 4 rgb uicolor ios

我在Fireworks中有一个图像.我正在使用选择器选择颜色,然后查看RGB值.我正在将这些值放入,UIColor:colorWithRed:green:blue:alpha但它没有给我相同的输出.我使用的值介于1.0和0.0之间.

我想要一个深蓝色,UIColor给我一个非常浅蓝色.

想法?

sco*_*s22 10

对我而言,就像你将烟花的值转换为UIColor所需的值的计算一样.

例:

Fireworks RGB值为红色:64绿色:87蓝色:188

将这三个数字除以255

给你 [UIColor colorWithRed:0.250980392156863 green:0.341176470588235 blue:0.462745098039216 alpha:1.0]

  • 如果你想在运行中进行计算,那么你需要使用小数进行计算,因此它将它们计算为浮点数,因为该方法需要传入CGFloat值.在您使用的示例中,20/255或109/255导致因为你正在进行整数除法而不是浮动,所以传入了0.所以简单地制作如果20.0f/255.0f和109.0f/255.0f然后它会给你颜色而不是给你黑色. (5认同)

小智 7

将其添加到头文件:(类似于helpers.h)

#define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1]
Run Code Online (Sandbox Code Playgroud)

然后将其添加到YourApp_Prefix.pch文件中

#import "helpers.h"
Run Code Online (Sandbox Code Playgroud)

最后,无论何时需要颜色,您都可以使用:

UIColor* myColor = RGBCOLOR(64,87,188);
Run Code Online (Sandbox Code Playgroud)

  • 我想你的意思是UIColor myColor = RGBCOLOR(64,87,188); (6认同)