2011-04-18 33 views
0

我在核心数据中有大量的项目。iPhone核心数据 - 在这种情况下如何为NSFetchedRequest制作NSPredicate?

每个项目都有一个名为“Source”的属性,它是一个字符串,表示此项目所属的Source。

当我从核心数据中提取数据时,我将每次从10个来源(总共超过200个来源)提取项目,每次在提取之前随机选择10个来源。

如何为这种情况编写NSPredicate?

如果每次只能从1个取源项目,很容易:

NSPredicate *pred = [NSPredicate predicateWithFormat:@"Source like %@", @"source1"]; 

但如果它是10点信息源和随时间变化?我是否需要写这样

NSPredicate *pred = [NSPredicate predicateWithFormat:@"(Source like %@) AND (Source like %@) AND...", @"source1", @"source3", ...]; 

感谢

回答

1
NSPredicate *p=[NSPredicate predicateWithFormat:@"source in %@", anArrayOfSourceStrings]; 
+0

这就是它,谢谢 – Jack 2011-04-19 09:26:34

0

NSPredicate *预解码= [NSPredicate predicateWithFormat:@ “在源(%@%@%@,%@ ......),@”来源1" ,@‘source3’,...];

+0

什么更好的方法,这样我可以分配包含所需源名称到NSPredicate否则阵列,如果需要的话源名称的数字是什么100 ?? – Jack 2011-04-18 16:43:56