Apple is giving the example,我可以创建一个MyColor类来保存颜色数据,并通过调用-setAttributeValueClassName:
方法将它与NSAttributeDescription对象一起使用。
但是缺少的是:MyColor如何持续存在?当我这样做时,我必须在-setAttributeType:
中提供什么?没有像“自定义类”这样的类型或类似的东西。
Core Data是否只是序列化MyColor并以某种方式将其存储在String数据类型中?这有什么作用?
编辑:这是否必须对价值变换器做任何事情?
答案 0 :(得分:3)
如果您阅读相同的文档,您会看到他们建议使用自定义类的可转换属性:
注意:对象值的示例 使用NSColor的一个实例;如果你 你应该使用Mac OS X v10.5 通常使用可变形的 属性改为。
iPhone OS 3.0核心数据与Snow Leopard时代核心数据类似,因此上述声明也适用于此。
您需要创建一个NSValueTransformer,它将您的自定义类型转换为Core Data可以处理的类型,例如NSData。 This CocoaDev wiki page链接到NSValueTransformer的一些示例。我提供了一些代码,用于将UIImages转换为this answer中的PNG数据。