【发布时间】:2011-11-15 07:12:23
【问题描述】:
- (NSFetchedResultsController *)fetchedGroupResultsController
{
if (fetchedGroupResultsController == nil)
{
NSManagedObjectContext *moc = [[self appDelegate] managedObjectContext_roster];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"XMPPGroupCoreDataStorageObject"
inManagedObjectContext:moc];
NSSortDescriptor *sd1 = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
//NSSortDescriptor *sd2 = [[NSSortDescriptor alloc] initWithKey:@"displayName" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObjects:sd1, nil];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
[fetchRequest setEntity:entity];
[fetchRequest setSortDescriptors:sortDescriptors];
[fetchRequest setFetchBatchSize:10];
fetchedGroupResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest
managedObjectContext:moc
sectionNameKeyPath:@"name"
cacheName:nil];
[fetchedGroupResultsController setDelegate:self];
[sd1 release];
//[sd2 release];
[fetchRequest release];
NSError *error = nil;
if (![fetchedGroupResultsController performFetch:&error])
{
NSLog(@"Error performing fetch: %@", error);
}
}
return fetchedGroupResultsController;
}`
我使用这种方法来获取组结果并且它有效。但是当我的一个联系人在线或离线时,
- (void)controllerDidChangeContent:(NSFetchedResultsController *)controller
{
[[self tableView] reloadData];
}
方法不会被调用,所以我的表格视图不会被重新加载,状态也不会被刷新。我很难过,谁能帮帮我?
【问题讨论】:
标签: iphone objective-c xmpp