iphone - NSFetchedResultsController 和子 UITableViewController

标签 iphone ios core-data

现在我有一个 UITableViewController,它显示一组 Artist 对象,这些对象使用 NSFetchedResultsController 分类(按字母顺序)。当您点击该列表中的一位艺术家时,将推送第二个 UITableViewController 并显示 artist.shows 对象,也按部分分类(按日期)。

现在我正在“手动”排序第二个数据源 (artist.shows),使用 NSSortDescriptor 和一个 for() 循环来确定在哪里有表格 View 部分(每个月一个部分)。

这是正确的方法吗?创建第二个 NSFetchedResultsController 来对数据进行排序是否更有意义,尽管它基本上是获取我在 artist.shows 中已有的数据?

最佳答案

您绝对应该使用第二个获取结果 Controller 。它可以与第一个共享 managedObjectContext,允许访问该上下文中已经出错的对象。

您需要为 Controller 适本地构建谓词/排序描述符,例如:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"artist.name == %@" argumentsArray:[NSArray arrayWithObject:selectedArtist.name]];

您也可以通过实际的艺术家对象来确定它的范围,但这应该会让您有所了解。

关于iphone - NSFetchedResultsController 和子 UITableViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6400324/

相关文章:

iphone - iOS CF 数据结构与 NS 数据结构

ios - 更改捆绑 ID iOS

ios - 使用 swift 检查从图库中选择的模式 uiimage

ios - 在 loadView 期间或之前获取 UINavigationController 的内部 contentView 的 CGRect 框架

objective-c - 在运行时向 iOS 上的 Objective-c 中的对象发送动态消息

iphone - Coredata 更新后一致更新 UITableview

ios - NSPredicate 状态恢复

ios - 将子实体追加到核心数据 iOS Swift 中的实体

iphone - 是否可以像读取 RFID 标签一样读取 iPhone 的 NFC 芯片?

ios - iPhone SDK_表格 View 里面的表格 View