【发布时间】:2010-12-16 03:34:38
【问题描述】:
我可以整天将 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 颜色空间,因此不适合我的应用程序。
【问题讨论】:
标签: iphone key nsmutabledictionary uicolor copywithzone