Подклассифицированный View Controller получает ошибку «не соответствует кодировке значения ключа» - PullRequest
0 голосов
/ 12 сентября 2010

Я пытался решить эту ошибку 2 дня подряд и, похоже, не могу найти проблему.

Я подклассифицировал стандартный ViewController примерно так:

@interface ToolbarVC : UIViewController {
 IBOutlet UIButton* button1;
 IBOutlet UIButton* button2;
 IBOutlet UIButton* button3;
 IBOutlet UIButton* button4;
}
@property(nonatomic, retain) IBOutlet UIButton* button1;
@property(nonatomic, retain) IBOutlet UIButton* button2;
@property(nonatomic, retain) IBOutlet UIButton* button3;
@property(nonatomic, retain) IBOutlet UIButton* button4;

-(IBAction) button1Pressed:(id)sender;
-(IBAction) button2Pressed:(id)sender;
-(IBAction) button3Pressed:(id)sender;
-(IBAction) button4Pressed:(id)sender;

@end

В конструкторе интерфейса я подключил все кнопки к владельцу файла, как обычно.

В инспекторе идентичности ToolbarVC в разделе «Идентификация класса» я изменил имя класса «Владелец файла» на «ToolbarVC».

В моем AppViewController я создаю экземпляр класса следующим образом:

ToolbarVC* tbvc = [[ToolbarVC alloc] init];
photoToolbarVC = tbvc; // this is my class variable
[self.view addSubview:tbvc.view];

ToolbarVC inits, и в его методе viewDidLoad правильно задаются имена и размеры кнопок.

Однако, если я пытаюсьпри нажатии на кнопки происходит сбой с EXC_BAD_ACCESS.ЕСЛИ я пытаюсь анимировать панель инструментов в виде, подобном этому:

[UIView beginAnimations:@"addToolbars" context:nil];
[UIView setAnimationDuration:kFadeDuration];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[photoToolbarVC.view setCenter:CGPointMake(512, 200)];
[UIView commitAnimations];

Это дает мне эту ошибку:

*** Завершение приложения из-за необработанного исключения «NSUnknownKeyException», причина: '[setValue: forUndefinedKey:]: этот класс не соответствует значению ключа, соответствующему кодированию для кнопки button4. '

Я искал два дня и пробовал несколько способов исправить это, включая initWithNibName: @ "ToolbarVC".

Что интересно, если я не анимирую его в представлении, оно отображается с кнопками, имеющими правильное имя и размер (это происходит в методе ToolbarVC viewDidLoad при его создании).Только когда я пытаюсь оживить его или нажать кнопку, он вылетает.

1 Ответ

0 голосов
/ 12 сентября 2010

ненавидели.Я нашел это.Оказывается, ссылка была выпущена и может быть доступна.Два дня над заявлением о выпуске.Что еще хуже, я нахожу это через час после публикации здесь.(

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...