NSArray dengan NSPredicate menggunakan NOT IN


90

Saya memiliki NSArray yang ingin saya filter objek tertentu menggunakan NSPredicate, saya berharap saya dapat menggunakan NOT IN karena saya melihat bahwa saya dapat dengan mudah melakukan IN.

Jadi saya memiliki array saya:

self.categoriesList

Lalu saya mendapatkan nilai yang ingin saya hapus:

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

Ini memberi saya daftar ParentCategoryID untuk kategori yang TIDAK ingin saya tampilkan, jadi saya pikir saya dapat menggunakan NSPredicate untuk menghapusnya:

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

Ini gagal:

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

Jika saya ingin menggunakan hanya IN yang berfungsi dengan sempurna tentunya.

Jawaban:



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.