我有一个可用的绘图应用程序,它使用核心数据数据库来存储绘图。它允许用户创建多个文档,但我只使用一个包含多个绘图实体的数据库。
现在我正在对该应用程序进行一些重大改进,并且我正努力把事情做对。我认为实现这种应用程序的方法是使用 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/