当前位置:  开发笔记 > IOS > 正文

在核心数据模型中存储NSImage

如何解决《在核心数据模型中存储NSImage》经验,为你挑选了3个好方法。

在核心数据模型中存储NSImage的正确方法是什么?我假设向实体添加一个属性并给它类型"二进制"应该工作,但它不起作用.我有一个带有NSImageCells列的表,它没有显示任何内容.



1> Barry Wark..:

如果你可以使用10.5+,最简单的方法是NSImageRep在"Transformable"属性中存储图像的s.默认情况下,可转换属性使用NSCoding在访问时将其值存档在set和unarchive上.这样您就不必编写自定义getter/setter.如果你想获得幻想,你可以编写一个自定义NSValueTransformer,将图像转换为其表示的实现版本,反之亦然.如果你使用10.4,那么你必须编写自定义的getter/setter方法(见苹果的创建文档非标准持久属性,你可以通过发送获取图像的图像代表NSImage一个-representations消息.

如果要通过绑定在UI中显示图像,还应阅读Cocoa Bindings编程主题的" 使用绑定显示图像"部分.



2> sbooth..:

这不能回答您提出的确切问题,但根据您存储的图像数量,可以更有效地仅将路径或URL存储到图像中,保存在您自己的位置,并根据需要加载它们.



3> Matthew Schi..:

您需要创建它的NSData表示.

看看非标准持久属性.特别是"可转换属性"下的部分,以及"自定义代码"(如果不对您进行排序).

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有