NSKeyedArchiver和AttributedString

时间:2013-04-14 18:45:22

标签: objective-c core-data nsattributedstring

我想知道如何序列化NSAttributedString,以便能够将其存储在核心数据managedObjectContext中。但是,我找到了this的答案,但在帖子中没有进一步的解释。有人可以解释(简而言之)如何手动编码属性字符串?非常感谢!

非常感谢!

编辑:

这就是我的所作所为:

NSMutableData *renderCacheData = [[NSMutableData alloc] init];
    NSKeyedArchiver *renderCacheArchiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:renderCacheData];
    [renderCacheArchiver encodeObject:bSelf.attString forKey:@"aS"];

在最后一行失败,输出如下:

  

***由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [__ NSCFType encodeWithCoder:]:无法识别的选择器发送到实例0x1c538a70'

现在我理解其他问题,这是因为CT *对象无法自行序列化(我的NSAttributedString属性dict包含CTFont和CTColorRef属性。唯一的是 - 我不知道如何在这些类型上写一个类别或(不太可能的?)子类,因此他们能够自己序列化。

0 个答案:

没有答案