0

我有一个核心数据实体,其头文件如下所示:

@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”类型的对象。

我已经多次清理了这个项目,这些警告已经存在了一段时间。任何建议表示赞赏。

4

1 回答 1

1

展开您的代码,使每条消息都在自己的行中,然后使用调试器遍历它,以确保每个对象都是您认为的那样。

于 2010-05-02T05:25:07.213 回答