Я нашел несколько ответов на мой вопрос, но он все еще не работает. Я установил кнопку в IB, и я хочу настроить действие и цель по коду (только для изучения). У меня есть функция в моем MainViewController:
- (IBAction) onSpecialCase:(id)sender {
NSLog(@"It's working");
}
В функции viewDidLoad я делаю это:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[myButton setTarget:self];
[myButton setAction:@selector(onSpecialCase:)];
}
Xcode уже помечает эти строки, говоря мне: «UIButton может не отвечать на setTarget». В любом случае, когда приложение запускается, оно перестает говорить:
-[UIRoundedRectButton setTarget:]: unrecognized selector sent to instance 0x4b47e30
2011-06-29 08:12:22.465 FirstTry[3765:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIRoundedRectButton setTarget:]: unrecognized selector sent to instance 0x4b47e30'
Это то, что я мог ожидать от предупреждения XCode, но почему? Каждый пример, который я нахожу в Интернете, точно такой же, как мой. Добавление actionMethode к кнопке через IB работает, как и ожидалось. Что я делаю не так?