我在一个数据库中几行,一个字段是相关颜色的argb值。

我要读取这些表的所有行,并将ARGB值十进制转换为Uicolor。

我忘了发现这个,但我没有。

有没有办法接近这个?

谢谢。

有帮助吗?

解决方案

text.color = [UIColor colorWithRed:10.0/255.0 green:100.0/255.0 blue:55.0/255.0 alpha:1];
.

您只需要将RGB值划分为255以获取正确设置的东西。

其他提示

这是我提出的方法,以将argb整数转换为ui颜色。在我们的.NET系统中测试了几种颜色

+(UIColor *)colorFromARGB:(int)argb {
    int blue = argb & 0xff;
    int green = argb >> 8 & 0xff;
    int red = argb >> 16 & 0xff;
    int alpha = argb >> 24 & 0xff;

    return [UIColor colorWithRed:red/255.f green:green/255.f blue:blue/255.f alpha:alpha/255.f];
}
.

您可以定义宏并在整个代码中使用它

#define UIColorFromARGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 \
blue:((float)(rgbValue & 0xFF))/255.0 alpha:((float)((rgbValue & 0xFF000000) >> 24))/255.0]
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top