【发布时间】:2011-01-21 04:19:00
【问题描述】:
我有一个名为“用户”的 CoreData 对象。这个对象在 User.h 和 User.m 中有一个用 @property (nonatomic, retain) NSNumber * isloggedin; 声明的属性,在 User.m 我有 @dynamic isloggedin;
在我的 AppDelegate 我有这个方法:
- (NSManagedObject *) getLoggedInUserFromCurrentServer {
NSManagedObject *theUser = nil;
for (User *user in [[self myServer] users]) {
if (user.isloggedin == [NSNumber numberWithBool:YES]) {
// we found it
theUser = user;
break;
}
}
return theUser;
}
我查看了数据库中的表,只有一个用户和一个服务器。该用户已将 ZISLOGGEDIN 设置为 1。
当此代码通过时,IF 语句为 false。
如果我 po 它,[NSNumber numberWithBool:YES] 返回 1。
如果我po user.isloggedin 或po [user isloggedin] 我得到no member named isloggedin 和Target does not respond to this message selector。
我之前有这个代码工作,但改变了它,无法弄清楚我之前做了什么使这个工作......或者为此,为什么这不起作用。我确定我在这里遗漏了一些非常明显的东西......但我找不到它。
【问题讨论】:
标签: iphone objective-c core-data boolean