如何使用 NSFetchedResultsController 支持管理 UITableView 上的数据,如 iPhone Photo 应用
Posted
技术标签:
【中文标题】如何使用 NSFetchedResultsController 支持管理 UITableView 上的数据,如 iPhone Photo 应用【英文标题】:How to use NSFetchedResultsController to support managing data on UITableView like iPhone Photo app 【发布时间】:2010-01-14 18:15:36 【问题描述】:我是 iPhone 开发的初学者,我使用核心数据作为后备存储,并在 UITableView 上显示多个数据实体。每个数据实体将显示为预览缩略图,一个表格视图单元格将包含 1 到 4 个缩略图。这意味着 3 个表格单元格最多可以显示 12 个数据实体,就像 iPhone Photo 一样。
我还需要直接对每个预览缩略图进行操作,而不是对整个表格视图单元格进行操作。
如果在一个表格单元格上显示一个数据实体,NSFetchedResultsController 是完美的。但在我的场景中,NSFetchedResultsController 的索引路径与表视图的索引路径不匹配。我可以知道在这种情况下使用 NSFetchedResultsController 的好习惯是什么吗?我应该使用表格视图来支持这种实现吗?
【问题讨论】:
【参考方案1】:我不知道它是否实现了您想要的确切类,但您可能想查看three20 开源项目。它包含来自 Facebook 应用程序的大部分控件等。如果它有照片选择器,那么你可能很幸运。
【讨论】:
+1 Three20 中的 TTThumbsViewController 可能是这里最好的解决方案。 Three20 从答案链接到“带有行和列的表格,iphone”***.com/questions/2040543/…【参考方案2】:我将创建一个封装 4 个 url 字符串的实体。然后获取该实体并将这些 url 字符串提供给负责下载图像的类。
如果您不想这样做,那么您将不得不依靠正常的 NSFetchRequest 并自己解析重新调整的数据。只需遍历返回的数组并一次提取 4 个 url。应该是一段微不足道的代码。
【讨论】:
以上是关于如何使用 NSFetchedResultsController 支持管理 UITableView 上的数据,如 iPhone Photo 应用的主要内容,如果未能解决你的问题,请参考以下文章
启动 Core Data 应用程序时在后台配置 NSFetchedResultsController