iphone核心数据的新功能

iphone核心数据的新功能,iphone,cocoa-touch,uitableview,core-data,Iphone,Cocoa Touch,Uitableview,Core Data,我是iphone平台的新手,正在创建一个可以检索rss提要并在UITableView中显示的应用程序。我已经让它完美地工作了(或者更确切地说,是我想要的方式)。我当时的想法是,我会将当前提要项存储在手机上,这样手机在获取新提要时会首先加载它存储的旧项,然后解析新提要并添加新项并刷新TableView。我打算使用核心数据将其存储在旧的提要项中,因为这是学习核心数据的好方法,也是对核心数据的适当使用。但是,我很难学习如何使用核心数据并将其与表/数组连接起来 我已经在谷歌上搜索并查看了stackove

我是iphone平台的新手,正在创建一个可以检索rss提要并在UITableView中显示的应用程序。我已经让它完美地工作了(或者更确切地说,是我想要的方式)。我当时的想法是,我会将当前提要项存储在手机上,这样手机在获取新提要时会首先加载它存储的旧项,然后解析新提要并添加新项并刷新TableView。我打算使用核心数据将其存储在旧的提要项中,因为这是学习核心数据的好方法,也是对核心数据的适当使用。但是,我很难学习如何使用核心数据并将其与表/数组连接起来

我已经在谷歌上搜索并查看了stackoverflow的教程,但还没有找到任何我真正理解的解释。任何关于向现有应用程序添加核心数据的总体步骤的解释都将不胜感激。完整的细节是不必要的(但也将是有用的)。我对SQL或以这种方式存储数据不是很有经验,我很难理解核心数据的整个概念是如何工作的,以及它是如何连接到所有东西的


此外,如果您使用CoreData来填充您真正想要使用的UITableView,而不是自己尝试填充和同步阵列,那么我也将非常感谢您使用任何更好的方法来完成我尝试完成的任务。

。NSFetchedResultsController的文档包括指向多个CoreData教程的链接,包括填充表视图的OnCE。

存在用于基于核心数据的应用程序的Xcode模板;这是一个很好的开始,让核心数据离地。不过,听起来你想将核心数据集成到现有的应用程序中,所以你需要

  • 添加三个主要的核心数据对象:托管对象上下文(MOC)、托管对象模型(MOM)和持久存储协调器(PSC)。这些需要在您希望核心数据可用的任何地方都可以访问,因此可以在您的应用程序委托中,或者更优选地,在您的表视图的控制器或数据源中
  • 在Xcode中创建MOM。这将是一个.xcdatamodel类型的文件,它是一个对象图,用于定义应用程序中需要的所有核心数据实体
  • 使用NSFetchedResultsController(正如Louis Gerbarg所建议的那样)从核心数据中获取数据并将其显示到表视图中
  • 在现有RSS获取和解析例程中添加代码,以便在适当时将新的核心数据对象存储回存储区
一个好的开始方式就是创建一个新的核心数据应用程序,并对其进行一些处理;你也可以看看苹果公司在这方面的丰富资源,比如和示例应用程序。(可能需要开发商注册。)


最后要注意的一点是,在大多数情况下,需要添加的大量核心数据代码可以直接从Xcode模板应用程序中取出并粘贴到程序中(这对于您需要的三个核心数据对象的访问器尤其适用)。不过,请注意不要使用您不理解的代码。

NSFetchedResultsController仍然有点问题,需要脆弱的解决方法。我将从更简单的iPhone核心数据“位置”教程开始,然后继续阅读书籍教程

此外,如果能有更好的方法来完成我想完成的任务,我将不胜感激


是的,听起来核心数据对您的应用程序来说可能是多余的。假设您的提要项存储在一个集合对象中,您可以轻松使用OSX。

在其他堆栈溢出帖子中已经提到,但我可以高度推荐Prag Prog书籍《核心数据:苹果用于在Mac OS X上持久化数据的API》——大多数与iPhone核心数据应用程序相关;还有一整章是关于创建iPhone应用程序的


你能说得更具体些吗?我记得有几个bug在3.0中产生了一些相当严重的后果,但我非常确定NSFetchedResultsController在3.1中是相当稳定和可用的。是否还有我不知道的未决问题?移动行时,fetch控制器引用其内部数组的中间索引。如果上述指标不再存在,随后重新加载的路段会立即导致碰撞。