NSFetchedResultController Sction Name – Custom Sorting según las dates

Estoy usando NSFetchedResultController. A continuación se muestra el escenario que quiero lograr.

  • Tengo una tabla de posts con attributes MessageDate (es decir, NSDate). Necesito clasificar las tags de Mensajes por date como Hoy, Ayer, Semana pasada y Más viejo.

  • Intenté utilizar NSSortDescriptor con el método selector, pero el formatting del método Selector devuelve solo el object NSComparisonResult.

En lugar de orderar los resultados, intente agregar sus descriptores de order en la request de obtención en sí. Y cree su instancia de NSFetchedResultController con esta request de obtención.

Por ejemplo, podría usar este fragment de código.

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"messageDate" ascending:YES]; NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil]; [fetchRequest setSortDescriptors:sortDescriptors]; NSFetchedResultsController *myFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:@"message" cacheName:nil];