NSKeyedArchiver不想编码图案颜色

时间:2013-03-17 23:45:25

标签: ios objective-c xcode

在我正在处理的项目中,我让用户选择一种颜色,用作某个视图的背景。他们可以选择任何主要颜色(例如“redColor”/“blueColor”)或创建具有自定义RGB值的颜色。当他们选择一种颜色时,它会将其存储到一个“以前使用过的颜色”数组中,这样如果他们想要重复使用它们,就可以在以后再次轻松选择它。

现在一切正常,我使用以下方法将颜色存储到NSUserDefaults中:

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:colorArray];
[[NSUserDefaults standardUserDefaults] setObject:data forKey:@"colors"];

这很有效,但每当我用图案存储颜色时(从underPageBackgroundColor开始),我都会收到警告:

we're encoding a color that has a pattern selector (underPageBackgroundColor) but not a system color name - that shouldn't happen

它不会阻止它工作,它仍然存储颜色,我可以在以后检索它。我应该担心这个错误并将图案颜色存储为字符串,还是应该忽略它,因为它似乎不会导致任何故障?

此外,有谁知道这个警告的原因?它似乎不是由任何不能按预期工作的原因引起的。

0 个答案:

没有答案