NSArray avec NSPredicate en utilisant NOT IN


90

J'ai un NSArray que je veux filtrer certains objets en utilisant un NSPredicate, j'espérais que je pourrais utiliser NOT IN depuis que j'ai vu que je peux facilement faire un IN.

J'ai donc mon tableau:

self.categoriesList

Ensuite, j'obtiens les valeurs que je souhaite supprimer:

NSArray *parentIDs = [self.cateoriesList valueForKeyPath:@"@distinctUnionOfObjects.ParentCategoryID"];

Cela me donne une liste de ParentCategoryID pour les catégories que je ne veux pas afficher, donc je suppose que je peux utiliser un NSPredicate pour les supprimer:

self.cateoriesList = [self.cateoriesList filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"CategoryID NOT IN %@",parentIDs]];

Cela échoue:

reason: 'Unable to parse the format string "CategoryID NOT IN %@"'

Si je voulais utiliser juste IN cela fonctionne parfaitement bien sûr.

Réponses:



En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.