У меня есть объект 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.
Я несколько раз чистил проект, и эти предупреждения какое-то время болтались. Любые предложения приветствуются.