如何将 UIColor 转换为十六进制字符串?

2024-02-14

我有一个项目,需要将 UIColor 的 RGBA 值作为 8 个字符的十六进制字符串存储在数据库中。例如,[UIColor blueColor] 将为@“0000FFFF”。 我知道我可以像这样获取组件值:

CGFloat r,g,b,a;
[color getRed:&r green:&g blue: &b alpha: &a];

但我不知道如何从这些值转换为十六进制字符串。我看过很多关于如何采取其他方式的帖子,但对于这种转换没有任何作用。


首先将浮点数转换为 int 值,然后使用stringWithFormat:

    int r,g,b,a;

    r = (int)(255.0 * rFloat);
    g = (int)(255.0 * gFloat);
    b = (int)(255.0 * bFloat);
    a = (int)(255.0 * aFloat);

    [NSString stringWithFormat:@"%02x%02x%02x%02x", r, g, b, a];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 UIColor 转换为十六进制字符串? 的相关文章

随机推荐