【发布时间】:2012-09-26 08:58:07
【问题描述】:
似乎找不到任何问答或任何对我有帮助的东西,但如果你找到一些,请随时链接! 我从核心数据实体中提取了数据,并使用 setPropertiesToFetch 提取了“行号”列表。 现在我想要的是取任何设置为 nil 的行号并将它们更改为 0。
问题 1) '无法识别的选择器发送到实例 0x59ef30'。通过注释掉其他人,我知道这个错误来自“if”行,但我不确定是什么原因造成的!
问题 2) 我希望它在增加计数后执行的操作再次运行,因此它会检查下一个对象,但我真的不确定执行此操作的最佳代码。任何方法/代码sn-ps/教程的建议都会很可爱!
这是代码(上面的获取请求工作正常:))
changeTo0 = [[context executeFetchRequest:fetchRequest error:&error] mutableCopy];
NSLog(@"What is even in this array anyway? %@", changeTo0);
[fetchRequest release];
NSLog(@"In the array there is %u records", [changeTo0 count]);
NSInteger count = 0;
Fsode *details = [changeTo0 objectAtIndex:count];
NSLog(@"In details we have %@", details);
if ([details lineNumber] == nil){
[details setValue:0 forKey:@"lineNumber"];
++count
NSLog(@"HERE");
}
【问题讨论】:
-
您能谈谈您的模型吗?你在使用
NSManagedObject子类吗? -
无法识别的选择器消息还应包括类的名称和选择器的名称。了解这些可能会有用。
-
对不起各位!是的,我正在使用 NSManagedObject,我对目标 C (2 个月左右)还是很陌生,所以对我来说很陌生,哈哈。等一下会报错...
-
NSKnownKeysDictionary1 lineNumber]:无法识别的选择器发送到实例 0x59ef30 2012-09-26 09:49:38.059 App[383:707] *** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“ -[NSKnownKeysDictionary1 lineNumber]:无法识别的选择器发送到实例 0x59ef30'
标签: ios objective-c xcode core-data