我有一个基于 SQL 的核心数据托管文档,并使用由 NSFetchedResultsController 支持的 tableview 呈现其内容。数据确实显示出来了,而且都在那里,但即使我真的试图让它排序,它也没有排序。这是我设置获取结果控制器的方法:
- (void)setupFetchedResultsController // attaches an NSFetchRequest to this UITableViewController
{
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Notebook"];
NSSortDescriptor *descriptor=[[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
request.sortDescriptors = [NSArray arrayWithObject:descriptor];
// no predicate because we want ALL the notebooks
self.fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:request
managedObjectContext:self.dbContext
sectionNameKeyPath:nil
cacheName:nil];
}
name 是字符串类型的属性。我还尝试了另一个 NSDate 类型的属性。它们都不起作用 - 即使在对文档应用任何更改之前应用程序启动时立即显示 tableview 时,数据也不会排序。
想法?