2016-05-12 163 views
1

我想谓词这样的:NSPredicate用(匹配或匹配)和匹配

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(self isKindOfClass: %@ || self isKindOfClass: %@) AND isActive == YES", [TestClass1 class], [TestClass2 class]]; 

但正如我认为()不工作,他们会因为它在一个if语句的作用:

if ((condition1 || condition2) && otherCondition) { 
} 

如果'condition1'或'condition2'为true,并且'otherCondition'为true,则stmt将为true。

我可以用NSPredicate这么做吗?

回答

1
[NSPredicate predicateWithFormat:@"(isActive == YES AND (class == %@ OR class == %@))", [TestClass1 class], [TestClass2 class]];