NSFetchedResultsController secondary sorting not working?

Posted by binkly on Stack Overflow See other posts from Stack Overflow or by binkly
Published on 2010-04-04T05:41:34Z Indexed on 2010/04/04 5:43 UTC
Read the original article Hit count: 374

Hello,

I'm using NSFetchedResultsController to fetch Message entities with Core Data. I want my tableview to group the messages by an attribute called ownerName. This works fine in the sense that I get a proper UI dispalying appropriately named sections. I can achieve this with the code below:

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"ownerName" ascending:NO];

NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil]; [fetchRequest setSortDescriptors:sortDescriptors]; NSFetchedResultsController *fetchedResultsController = nil;

fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:[appDelegate managedObjectContext] sectionNameKeyPath:@"ownerName" cacheName:@"Messages"]

What'd I'd like to do now is have the section with the newest message at the top; exactly how it works with the Messages app on iPhone currently.

I've tried adding a second sort descriptor and putting it in an array of sort descriptors and passing that to the fetchRequest but it doesn't appear to be affecting anything.

Here is the 2nd sort descriptor that I used.

NSSortDescriptor *idDescriptor = [[NSSortDescriptor alloc] initWithKey:@"createdAt" ascending:YES];

If anyone could provide some insight into this I would greatly appreciate it.

© Stack Overflow or respective owner

Related posts about iphone

Related posts about nsfetchedresultscontrolle