我可以整天将 UIColor 对象设置为 NSMutableDictionary 中的键,一切都很好,很开心......
例如:
[myDict setObject:foo forKey:[UIColor redColor]];
这很好用......除非我尝试使用以下内容:
UIColor *black = [[UIColor alloc] initWithRed:0 green:0 blue:0 alpha:1];
[myDict setObject:foo forKey:black];
这总是给我:
-[UIDeviceRGBColor copyWithZone:]:无法识别的选择器发送到实例 0x691be80
我在 RGB 颜色空间中定义黑色的原因对于这个问题并不重要,只要知道我必须以这种方式定义它。我不明白为什么只有这种颜色会导致我出现问题,为什么错误是 copyWithZone 错误?
作为记录, [UIColor blackColor] 用作键,但由于它不是 RGB 颜色空间,因此不适合我的应用程序。