ios - 多文档绘图应用程序核心数据方法

标签 ios objective-c core-data

我有一个可用的绘图应用程序,它使用核心数据数据库来存储绘图。它允许用户创建多个文档,但我只使用一个包含多个绘图实体的数据库。

现在我正在对该应用程序进行一些重大改进,并且我正努力把事情做对。我认为实现这种应用程序的方法是使用 UIManagedDocument

我的猜测是我应该为每个绘图使用一个 UIManagedDocument,这样它们将作为独立的文档保存在磁盘上,但我无法在任何地方找到任何这样的例子。

如果这是正确的方法(我不确定),我需要知道:

  • 如何检索创建的所有文档(图纸)的列表?
  • 如何保存绘图的预览图像?我是将它保存在 UIManagedDocument 中还是其他地方?

谢谢。

最佳答案

也许您可以使用这篇文章作为起点: http://www.informit.com/articles/article.aspx?p=1842295&seqNum=10

UIManagedDocument 的主要思想是每个文档都有自己的 managedObjectContext,它保存在文档的包中。

How do I retrieve a list of all the documents (drawings) created?

要显示本 map 纸列表,您可以在 Collection View 中显示存储目录内容。
在处理存储在 iCloud 中的文档时,Apple 建议使用 NSMetadataQuery .

How do I save a preview image of the drawing? Do I save it inside the UIManagedDocument or somewhere else?

为了在 bundle 中存储额外的信息(比如你的文档预览),UIManagedDocument 提供了 writeAdditionalContent:toURL:originalContentsURL:error:

还请记住,NSDocument/UIDocument 是 Controller 类(而不是模型类)。

关于ios - 多文档绘图应用程序核心数据方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14338352/

相关文章:

ios - 适合 Instagram 的 612x612 尺寸的完整图像,同时保持比例

html - 如何在 Cordova iOS 项目中更改文本字段光标颜色

iOS 画中画如果延迟加载则无法启动

iOS:无需重新安装即可重置 iOS 应用程序数据的可能选项有哪些?

objective-c - 核心数据获取请求中需要谓词吗?

ios - UISearchBar自定义类和外观

ios - 保存数据并 swift 展开到另一个 Controller

ios - 在 Google map iOS 中闪烁自定义标记

ios - AFNetworking 与 CLLocation 给出错误

ios - 尝试更改 Bool 属性时出现 EXC_BAD_ACCESS 错误