gpt4 book ai didi

iphone - 在 Objective-C 中比较颜色

转载 作者:太空狗 更新时间:2023-10-30 03:34:15 25 4
gpt4 key购买 nike

我正在尝试使用用 Objective-C 编写的代码来确定两种颜色是否相等。

我正在使用这段代码来确定两种颜色是否相同(目前用于调试目的)

    NSLog(@"currentColor is %@", currentColor);
NSLog(@"Adjacent Color is %@",[[buttonArray objectAtIndex:1] backgroundColor]);
NSLog(@"%i",[[buttonArray objectAtIndex:1] backgroundColor]==currentColor);

我的控制台正在显示

2009-10-20 00:27:10.814 colorGame[13588:207] currentColor is kCGColorSpaceModelRGB 0 0 1 1 
2009-10-20 00:27:10.815 colorGame[13588:207] Adjacent Color is kCGColorSpaceModelRGB 0 0 1 1
2009-10-20 00:27:10.815 colorGame[13588:207] 0

如果有人问我可以发布更多代码(我不知道是否真的有必要)。当前颜色最初定义为

UIColor *currentColor;

如果有任何帮助。

我很确定我只是做错了比较,而且可能有一些我不知道的内置方法可以比较颜色。

最佳答案

@implementation UIColor (compare)

- (BOOL) isEqualToColor:(UIColor *) otherColor
{
return CGColorEqualToColor(self.CGColor, otherColor.CGColor);
}

@end

请记住,看起来相同的两种颜色可能返回 TRUE,也可能不返回 TRUE,因为组件保持为 float ,它们的差异值可能小于显示硬件可以解析的值。

另请记住,如果它们在不同的颜色空间中定义,则此方法永远不会返回 TRUE。

关于iphone - 在 Objective-C 中比较颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1592995/

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