【发布时间】:2015-05-21 17:14:15
【问题描述】:
我有以下扩展方法在数组中搜索:
- (NSArray *)searchItemsForTerm:(NSString *)term;
{
NSPredicate *resultPredicate = [NSPredicate predicateWithFormat:@"name contains[c] %@", term];
return [[self filteredArrayUsingPredicate:resultPredicate] copy];
}
有时并非数组中的所有对象都具有“名称”属性。在这种情况下,我得到一个例外。 有没有办法创建这个可以忽略任何不存在的属性的谓词?
谢谢!
【问题讨论】:
-
您可以在您的 CoreData 实体中进行自省以检查实体是否具有属性...oleb.net/blog/2011/05/inspecting-core-data-attributes
-
如果你想根据它是什么实体来改变属性名称,使用
@"%K contains[c] %@", myPropertyName, term];
标签: ios objective-c cocoa