多文档绘图应用核心数据方法

时间:2013-01-15 13:02:07

标签: ios objective-c core-data

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

现在我在应用程序中做了一些重大改进,我正在努力做正确的事情。我认为这种应用的方法是使用 UIManagedDocument

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

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

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

感谢。

1 个答案:

答案 0 :(得分:1)

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

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

  

如何检索创建的所有文档(图纸)的列表?

要显示本地图纸列表,您只需在集合视图中显示存储目录内容即可 在处理存储在iCloud中的文档时,Apple建议使用NSMetadataQuery

  

如何保存图纸的预览图像?我把它保存在里面吗?   UIManagedDocument还是其他地方?

要在捆绑包中存储其他信息(如文档预览),UIManagedDocument提供writeAdditionalContent:toURL:originalContentsURL:error:

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