Vous ne voulez probablement pas de NSFetchedResultsController. Un contrôleur de résultats est généralement utilisé avec UITableViewController en tant qu'objet auxiliaire pour remplir la table.
Si c'est ce que vous voulez, continuez. Cependant, si vous cherchez simplement à obtenir les entités du contexte de données de base, vous n'avez besoin que d'une NSFetchRequest. Disons que vous avez un objet de données de base appelé Personne. Disons que nous voulons toutes les entités qui sont nommées "Ryan"
NSFetchRequest *fetch = [NSFetchRequest fetchRequestWithEntityName:@"Person"];
NSString *nameToGet = @"Ryan";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name = %@", nameToGet];
[fetch setPredicate:predicate];
NSError *error = nil;
NSArray *results = [[self managedObjectContext] executeFetchRequest:fetch error:&error];
if(results) {
NSLog(@"Entities with that name: %@", results);
for(Person *p in results) {
NSLog(@"person = %@", p);
}
return results;
} else {
NSLog(@"Error: %@", error);
}
return nil;
Donc vous créez une requête d'extraction. Un NSPredicate est comme les conditions where d'une instruction SQL. Vous créez donc un prédicat avec un format (there are tons of options for creating predicates). Définissez le prédicat de la demande, puis dites à votre managedObjectContext d'exécuter la requête d'extraction. Tous les résultats de la requête seront dans le tableau renvoyé. Chaque objet du tableau sera un objet de type Person.
Si vous cherchez à utiliser NSFetchedResultsController, c'est essentiellement le même type de chose. Cependant, vous créez le contrôleur avec une requête d'extraction qui est immuable, donc elle obtient toujours les mêmes données. Si vous voulez des données différentes, vous devrez créer un autre contrôleur. Si vous vous contentez de NSFetchRequests (j'épelle mes couches de données depuis mon interface utilisateur, l'utilisation des contrôleurs ne me semble pas très utile), vous pouvez interroger toutes les données que vous voulez et renvoyer les résultats.
La documentation de 'NSFetchedResultsController' inclut un exemple de code détaillé et six exemples d'applications différentes qui l'utilisent. Avez-vous une question précise que rien de tout cela ne répond? –
Eh bien maintenant, je sais où aller, merci! J'ai été tellement ébloui par différents sites créant des enveloppes de modèles et le contexte de l'objet du modèle. – jacobronniegeorge