Неверный тип получателя 'NSUInteger' - PullRequest
0 голосов
/ 02 мая 2010

У меня есть объект 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.

Я несколько раз чистил проект, и эти предупреждения какое-то время болтались. Любые предложения приветствуются.

1 Ответ

1 голос
/ 02 мая 2010

Разверните ваш код так, чтобы каждое сообщение было в отдельной строке, а затем просмотрите его с помощью отладчика, чтобы убедиться, что каждый объект соответствует вашему.

...