Имеются следующие отличия:
-1. все изображения, если в списке есть любой тег
NSPredicate(format:"ANY tags in %@", list)
-2. все изображения, где находятся все теги
NSPredicate(format:"SUBQUERY(tags, $tag, $tag IN %@)[email protected] = %d",
list, countElements(list))
-3. все изображения, в которых теги содержат по крайней мере все в списке (но, возможно, их больше)
Существует две возможности для этой последней проблемы. Один включает подзапросы, но вы можете сделать это и с составными предикатами.
var subPredicates = [NSPredicate]()
for tag in tagList {
subPredicates.append(NSPredicate(format:"ANY tags = %@", tag))
}
NSCompoundPredicate.andPredicateWithSubpredicates(subPredicates)
попытался добавить предикат к вашему NSFetchRequest? –