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.
ios
objective-c
nsarray
nspredicate
Lengan
sumber
sumber