我有一个核心数据实体,其头文件如下所示:
@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' 对象是一个管理 MyEntity 的所有实体的 NSArrayController。此代码正确执行,但是 XCode 总是针对最后一行代码给出警告“无效的接收器类型 'NSUInteger'”。出于某种原因,XCode 认为该index
方法返回一个 NSUInteger。我不确定它为什么会这样认为,因为“objectAtIndex”返回一个“id”类型的对象。
我已经多次清理了这个项目,这些警告已经存在了一段时间。任何建议表示赞赏。