我正在尝试在非基于文档的(单协调器)应用程序中使用 CoreData。我已经搜索了一个好的例子,并测试了几种不同的方法,但是 - 作为一个完整的Mac OS X开发的新手 - 无法找到任何有用的东西。
基本上,我有一个应用程序,其中NSTableView列出了一些条目,每个条目都可以编辑并保存其相关数据。数据不是基于文档的,但应存储在某种"中央存储"中。我很好地设置了模型,并且可以手动填充表中的项目。问题只是:如何使用 CoreData 持久保存数据,以便下次应用程序启动时可以再次加载数据。
这里有一个很好的一行摘要来描述我正在寻找的内容:"这些应用程序通常具有由单个控制器对象管理的单个核心数据堆栈(由单个持久存储协调器定义)。他们通常对整个应用程序使用单个持久存储。
http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/CoreDataSnippets/Articles/stack.html
是否有任何好的教程或快速代码示例,我可以在其中了解如何执行此操作?
为什么不创建一个新的 xcode 项目,选择一个 cocoa 应用程序并检查 use core data 标志,而不是基于文档的标志,然后看看 xcode 生成了什么?
要么在项目中复制它,要么在新模板中移动现有代码。
Tim Isted 有一个很棒的示例项目。在本系列文章中,作者解释了如何使用 CoreData 构建鞋盒应用程序、如何支持 Undo、多个托管对象上下文等。您可能必须使源代码适应现代Cocoa环境,但这应该是完全值得的。