Хорошо, поэтому я столкнулся с проблемой с моим кодом. То, что я сделал, является подклассом UIButton, поэтому я могу дать ему дополнительную информацию, относящуюся к моему коду. Я смог создать кнопки, и они отлично работают. Capiche.Предоставление другого объекта NSManagedObject
Однако, одна из вещей, которые я хочу, чтобы мой подкласс удерживался, является ссылкой на объект NSMangedObject. У меня есть этот код в моем файле заголовка:
@interface ButtonSubclass : UIButton {
NSManagedObjectContext *context;
NSManagedObject *player;
}
@property (nonatomic, retain) NSManagedObject *player;
@property (nonatomic, retain) NSManagedObjectContext *context;
- (id)initWithFrame:(CGRect)frame andTitle:(NSString*)title;
//- (void)setPlayer:(NSManagedObject *)aPlayer;
@end
Как вы можете видеть, он имеет переменную экземпляра в NSMangedobject я хочу его держать (а также контекст). Но для моей жизни я не могу заставить ее удерживать NSManagedObject. Я запускаю оба метода @synthesize в файле реализации.
@synthesize context;
@synthesize player;
Так что я не уверен, что я делаю неправильно. Это, как я создаю мою кнопку:
ButtonSubclass *playerButton = [[ButtonSubclass alloc] initWithFrame:frame andTitle:@"20"]; //works
playerButton.context = self.context; //works
playerButton.player = [players objectAtIndex:i]; //FAILS
И я initilaized массива игроков раньше, где я получаю объекты. Еще одна странность в том, что когда дело доходит до этого места в коде, приложение вылетает (woot) , а консольный выход останавливается. Это не дает мне никакой ошибки и уведомления вообще о том, что приложение разбилось. Это просто ... останавливается. Поэтому я даже не знаю, что такое ошибка, это сбой кода, кроме того, он связан с этой строкой, устанавливая переменную «player». Мысли и идеи? Мне понравилась бы твоя мудрость!
Не имеет отношения к вопросу, но на самом деле вам не нужно иметь свойство для 'NSManagedObjectContext' - вы можете просто использовать свойство' managedObjectContext' объекта 'player'. – shosti