Hey, J'ai un tableau de NSDictionaries (par exemple [tempArray addObject:[[[NSMutableDictionary alloc] initWithObjects:someArray forKeys:keys] autorelease]];
) et quand j'essaie de le chercher avec NSPredicate il continue à me donner 'No Results'. (TempArray devient self.patientList)Aucun résultat lors de la recherche dans un NSArray de NSDictionaries utilisant NSPredicate
Je n'ai pas d'avertissements ou d'erreurs au moment de la compilation, et si NSLog([self.filteredArray count]);
alors il renvoie 0 également.
Voici mon code correspondant:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(first contains[cd] %@)", self.searchBar.text];
self.filteredArray = [self.patientList filteredArrayUsingPredicate:predicate];
return [self.filteredArray count];
self.patientList et self.filteredArray sont les types NSMutableArray et NSArray respectivement (changement self.filteredArray à NSMutableArray ne contribue pas).
J'ai essayé d'utiliser == à la place de contient aussi bien. L'utilisation de @"SELF contains[cd] %@"
renvoie uniquement un élément lorsque l'élément complet est tapé (si la clé 'nom' est @ "Bob" alors si je tape Bob, il l'affichera, mais pas quand je tape Bo ou ob).
Je suis vraiment perplexe sur celui-ci.
Merci d'avance!
Merci tellement de! Juste changé cela et cela a fonctionné. Et juste une question, comment trier un tableau de dictionnaires par une clé? Merci – Fred
De rien. Quand il s'agit de trier un tableau, il existe plusieurs méthodes disponibles, toutes commençant par sortedArray .... Si vous ne parvenez pas à savoir comment le faire, posez une nouvelle question ici sur StackOverflow. –
'@ Robert' Mais comment sait-il quelle touche choisir? Je vais jeter un coup d'œil, merci. – Fred