Je fais une vue comme l'iPhone Calendar ListView. J'utilise des données de base et obtenir des rendez-vous et les regrouper par date.Ajouter une section vide à NSFetchedResultsController
Cependant, tout comme dans la liste d'iPhone, j'ai besoin d'ajouter une section vide pour aujourd'hui, même s'il n'y a pas de rendez-vous. Je ne peux pas comprendre comment faire cela pour une section sans rendez-vous puisque je fais le tri avant de créer le groupe.
Comment est-ce que j'ajouterais une section vide au NSFetchedResultsController
et l'aurais-je eu pour que la date d'aujourd'hui soit au bon endroit et pas à la fin de la liste?
- (NSFetchedResultsController *)fetchedResultsController {
/*
Set up the fetched results controller.
*/
// Create the fetch request for the entity.
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
// Edit the entity name as appropriate.
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Appointments" inManagedObjectContext:[[CoreDataHelper sharedInstance] managedObjectContext]];
[fetchRequest setEntity:entity];
//[fetchRequest setIncludesPendingChanges:YES];
// Set the batch size to a suitable number.
//[fetchRequest setFetchBatchSize:20];
// Sort using the date/then time property.
NSSortDescriptor *sortDescriptorDate = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:YES];
NSSortDescriptor *sortDescriptorTime = [[NSSortDescriptor alloc] initWithKey:@"start_time" ascending:YES selector:@selector(localizedStandardCompare:)];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptorDate, sortDescriptorTime, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
// Use the sectionIdentifier property to group into sections.
NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:[[CoreDataHelper sharedInstance] managedObjectContext] sectionNameKeyPath:@"date" cacheName:nil];
aFetchedResultsController.delegate = self;
self.fetchedResultsController = aFetchedResultsController;
return fetchedResultsController;
}
Je ne sais pas comment cela peut m'aider. Étant donné que je crée les sections en fonction de l'objet date de l'élément, je ne suis pas sûr de savoir comment l'implémenter sans modifier tout mon schéma. En utilisant cela, j'ai l'impression que j'aurais besoin des articles et des sections envoyés séparément. – Bot
OK - J'ai mis à jour ma réponse pour être plus concis. Le fait est, vous ne pouvez pas avoir une section vide avec 'NSFetchedResultsController' - mauvaises nouvelles j'ai peur. Cependant, il ne devrait pas être trop compliqué de réajuster votre modèle de données pour vous permettre d'utiliser la classe 'TAFetchedResultsController'. Vous auriez juste besoin de créer des objets de section pour chaque jour (1 à 31 je présume) et créer une relation avec vos objets de rendez-vous. Tim a un code d'exemple là-bas qui est facile à suivre. Je pense que tu seras capable de réaliser ce que tu veux. J'espère que cela t'aides. – Stretch