我有一个Core Data实体,其头文件如下所示:
@interface MyEntity : NSManagedObject
{
}
@property (nonatomic, retain) NSNumber * index;
@end
它的实现文件如下所示:
@implementation MyEntity
@dynamic index;
@end
现在,我有一段代码如下:
NSArray* selectedObects = [myEntityArrayController selectedObjects];
NSUInteger theIndex = [[[selectedObects objectAtIndex:0] index] unsignedIntegerValue];
'myEntityArrayController'对象是一个NSArrayController,它管理MyEntity的所有实体。此代码正确执行,但XCode始终为最后一行代码提供警告“无效接收器类型'NSUInteger'”。出于某种原因,XCode认为index
方法返回NSUInteger。我不确定为什么会这么想,因为'objectAtIndex'返回一个'id'类型的对象。
我已经多次清理了这个项目,这些警告已经暂停了一段时间。任何建议都表示赞赏。
答案 0 :(得分:1)
展开您的代码,使每条消息都在自己的行上,然后使用调试器遍历它,以确保每个对象都是您认为的。