【问题标题】:Setting sectioned table header using nsfetchedresults controller使用 nsfetchedresults 控制器设置分段表头
【发布时间】:2013-04-11 05:43:20
【问题描述】:
我在我的项目中使用 NSFetchedResultsController 以及核心数据。我能够从数据库中获取所有对象。我在分段表视图中显示它们。我想将每个部分中的总行数显示为部分表视图的标题。我没有得到任何帮助。我已经尝试了很多,但不知道如何设置它。任何形式的帮助都是可观的。
【问题讨论】:
标签:
ios
ipad
nsfetchedresultscontroller
【解决方案1】:
类似下面的东西应该可以工作:
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
NSInteger numberOfRows = [[[self.frc sections] objectAtIndex:section] numberOfObjects];
UITableViewHeaderFooterView *sectionHeaderView = [[UITableViewHeaderFooterView alloc] init];
sectionHeaderView.textLabel.text = [NSString stringWithFormat:@"Total objects %d", numberOfRows];
return sectionHeaderView;
}
诀窍是从NSFetchedResultsController 中取出正确的部分并在其上调用numberOfObjects 方法。 NSFetchedResultsController 中的部分是符合 NSFetchedResultsSectionInfo 委托的代理对象。