NSPredicate在对象数组中的Object上应用谓词。

时间:2014-03-24 08:04:43

标签: ios iphone objective-c nsarray nspredicate

我有一个Array,包含Order Item Class的对象,并且在每个订单项中都有一个Article对象,其中包含其详细信息。

现在我想获得在单个订单商品的商品中具有特定名称的订单商品。我应该如何写我的NSPredicate

我正在尝试的是:

   NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.itemArticle.articleName CONTAINS[c] '%@'", searchString];
   NSArray *resultsArray = [allOrderItemArray filteredArrayUsingPredicate: predicate];

1 个答案:

答案 0 :(得分:4)

尝试删除占位符的SELF.部分和单引号(并关闭双引号)。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"itemArticle.articleName CONTAINS[c] %@", searchString];
NSArray *resultsArray = [allOrderItemArray filteredArrayUsingPredicate: predicate];