NSArray с NSPredicate с использованием NOT IN


90

У меня есть NSArray, в котором я хочу отфильтровать определенные объекты с помощью NSPredicate, я надеялся, что смогу использовать NOT IN, так как увидел, что могу легко выполнить IN.

Итак, у меня есть свой массив:

self.categoriesList

Затем я получаю значения, которые хочу удалить:

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

Это дает мне список ParentCategoryID для категорий, которые я НЕ хочу отображать, поэтому я полагаю, что могу использовать NSPredicate для их удаления:

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

Это не удается:

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

Если бы я хотел использовать только IN, это, конечно, отлично работает.

Ответы:



Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.