使用 CoreData 在 UITableViewController 中搜索:获取第二个 NSFetchedResultsController?

Posted

技术标签:

【中文标题】使用 CoreData 在 UITableViewController 中搜索:获取第二个 NSFetchedResultsController?【英文标题】:Search in a UITableViewController with CoreData: Take a second NSFetchedResultsController? 【发布时间】:2014-03-28 09:17:56 【问题描述】:

在我公司的新闻项目中,我需要提供搜索功能。

我使用 UITableViewController 和 CoreData/NSFetchedResultsController 来显示新闻,并使用 UISearchDisplayController 来提供搜索。

现在我的问题是: 有什么更好的方法: - 为“正常”表和搜索结果表使用相同的 fetchedResultsController - 为搜索结果表使用第二个 fetchedResultsController

谢谢!

【问题讨论】:

【参考方案1】:

是的 - 基本上最好有另一个 NSFetchResultsController 用于搜索表。

在表格和模式(搜索和正常浏览)之间切换时性能更好。

此外,当您实现 NSFetchedResultsController 委托时,您将从这种方法中受益 - 在数据更改时刷新表 - 拥有 2 个 NSFetchedResultsController 允许您在不需要重新加载两个表时只重新加载一个表。

【讨论】:

谢谢!这是您的个人意见还是您有指向苹果文档或其他内容的链接? 这是我个人从我自己从事的项目中走出来的,以及我只使用一个项目时遇到的问题。但是您可以找到更多类似的解决方案 - raywenderlich.com 或 ***.com/questions/4471289/…

以上是关于使用 CoreData 在 UITableViewController 中搜索:获取第二个 NSFetchedResultsController?的主要内容,如果未能解决你的问题,请参考以下文章

在 coredata 中加载图像时 UITableView 滞后

使用 CoreData 和 NSFetchedResultsController 删除 UITableView 行

使用 NSFetchedResultsController 时 CoreData 与 UITableView 有啥关系?

如何快速使用 CoreData 信息对 UITableView 进行排序?

CoreData 数据到 UIViewController 中的 UITableView?

CoreData 和 UITableView:在单元格中显示值