【发布时间】:2010-07-20 17:51:03
【问题描述】:
我有一个 CoreData Mac 应用程序,我正在为其编写 iOS 前端。到目前为止一切正常,我能够成功读取在 iOS 版本中使用 Mac 应用程序创建的文件。我正在努力解决如何将 NSColor 数据(在我的数据模型中存储为 NSData 对象)读入 iOS 版本应用程序中的 UIColor。
总结一下:如何获取一个包含已归档 NSColor 对象的 NSData 对象并将其转换为 iOS 设备上适当的 UIColor 对象?
【问题讨论】:
-
正如 Dave DeLong 所指出的,您将无法在 iOS 端取消归档到 NSColor 对象。在这种情况下,您可能想要序列化组件(例如,作为 NSArray)或创建两个平台都可以理解的自定义类。
-
warrenm 有正确的答案。您将不必直接使用
NSColor/UIColor。您可以使用 RGBA 组件创建自己的NSObject子类并将其存档,或者直接存档值。 -
同意。实现这一点需要对发布 Mac OS 代码进行一些重大更改,所以我现在不愿意继续这样做,但我会在下一个修订版中解决它并围绕它计划 iOS 版本。谢谢。
标签: iphone cocoa core-data uikit