gpt4 book ai didi

iphone - UIColor 到无符号整数

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:09:22 26 4
gpt4 key购买 nike

我找到了一个用于替换颜色的 UIImage 类别 here

问题是方法签名接收到一个无符号整数颜色代码:

- (UIImage *)imageByRemovingColorsWithMinColor:(uint)minColor maxColor:(uint)maxColor

如何从 UIColor 中获取正确的无符号整数值?

我其实想用紫色代替黑色。

最佳答案

如果您看过源代码,您会发现他们使用这个无符号整数值作为十六进制颜色代码,其中

colorcode = ((unsigned)(red * 255) << 16) + ((unsigned)(green * 255) << 8) + ((unsigned)(blue * 255) << 0)

因此您可以使用如下方式从 UIColor 对象中获取这样的十六进制值:

@implementation UIColor (Hex)

- (NSUInteger)colorCode
{
float red, green, blue;
if ([self getRed:&red green:&green blue:&blue alpha:NULL])
{
NSUInteger redInt = (NSUInteger)(red * 255 + 0.5);
NSUInteger greenInt = (NSUInteger)(green * 255 + 0.5);
NSUInteger blueInt = (NSUInteger)(blue * 255 + 0.5);

return (redInt << 16) | (greenInt << 8) | blueInt;
}

return 0;
}

@end

然后像这样使用它:

NSUInteger hexPurple = [[UIColor purpleColor] colorCode];

关于iphone - UIColor 到无符号整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11914137/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com