我有一个NSArrayController
充满NSMutableDictionary
对象。以下代码可以正常工作,但我想摆脱我收到的编译器警告。Collection expression type 'NSManagedObject *' may not respond to 'countByEnumeratingWithState:onjects:count:'
据我了解,我收到此错误是因为数组控制器内部可能还有不同类型的对象,它们没有键值。但就我而言,我只使用可变字典,所以应该没问题。
这是我的代码:
- (IBAction)getlist:(id)sender{
checkedchecks = 0;
for (NSManagedObject *a in imagescontroller.arrangedObjects)
{
for (NSString* key in a) {
if ([[NSString stringWithFormat:@"%@",[a valueForKey:key]] isEqualToString: @"1"])
{
checkedchecks += 1;
}
}
}
NSAlert *alert = [[NSAlert alloc] init] ;
[alert setMessageText:[NSString stringWithFormat:@"%ld",(long)checkedchecks ]];
[alert runModal];
}
我怎样才能摆脱这个烦人的警告?