sections et les lignes ne correspondent pas à uitableview
-
25-10-2019 - |
Question
J'utilise CoreData avec cette mise en page
Maintenant, je voudrais montrer une table avec la Cave.title sous forme de lignes commandées dans la Region.region en section. Avec le code suivant, il montre les sections et les lignes correctement. Le seul problème est que l'ordre ne va pas. Les lignes ci-dessous les sections ne appartiennent à cette section.
NSManagedObjectContext *context = country.managedObjectContext;
NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"Cave" inManagedObjectContext:context];
request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"title" ascending:YES]];
request.predicate = [NSPredicate predicateWithFormat:@"country = %@", country];
request.fetchBatchSize = 20;
NSFetchedResultsController *frc = [[NSFetchedResultsController alloc]
initWithFetchRequest:request
managedObjectContext:context
sectionNameKeyPath:@"region.region"
cacheName:nil];
[request release];
self.fetchedResultsController = frc;
Je ne sais pas quelle partie du tableviewcontroller je vous montrer?
« Bätterich » devrait être dans « Autres » et « Pertusio Acquacalda » devrait être dans « Tessin » J'ai vérifié le fichier sql de données de base et les références sont juste là.
La solution
Résolu le problème en utilisant les sortdescriptors suivants
NSSortDescriptor *sortDescriptorRegion = [[NSSortDescriptor alloc] initWithKey:@"region.region" ascending:YES];
NSSortDescriptor *sortDescriptorCave = [[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptorRegion, sortDescriptorCave, nil];
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow