Жесткое кодирование кнопки для IBAction в xcode

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

[btnDetail setImage:[UIImage imageNamed:@"btn-detail.png"] forState:UIControlStateNormal];

Я хочу связать кнопку непосредственно с IBAction, который я уже создал, под названием exitMovie, поэтому я надеялся сделать что-то вроде этого...

[кнопка setAction: [IBAction.exitMovie] forState:UIControlStateNormal];

или что-то в этом роде, но ничего из того, что я пробовал, не сработало. Как мне это сделать правильно?

ниже приведена ссылка на вышеупомянутый хардкод, который я использовал по большей части. Можете ли вы жестко закодировать IBActions и IBOutlets, а не перетаскивать их вручную в Interface Builder?


person Pkolms    schedule 06.07.2012    source источник


Ответы (1)


Вы сами нашли это в последнем вопросе:

[button addTarget:self 
               action:@selector(exitMovie:)
     forControlEvents:UIControlEventTouchUpInside];
person Ahab    schedule 06.07.2012
comment
Это избавило от всех ошибок, но когда я запускаю его и пытаюсь нажать эту кнопку, я получаю сигнал SIGABRT, который гласит: - person Pkolms; 07.07.2012
comment
Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «-[ViewController exitMovie:]: нераспознанный селектор отправлен экземпляру 0xf244410» - person Pkolms; 07.07.2012
comment
Я понимаю, что это означает, что мне нужно реализовать метод exitMovie внутри ViewController, но я уверен, что сделал это. Как именно он хочет, чтобы я реализовал exitMovie, если я делаю это неправильно? Я только что инициализировал exitMovie в .h и реализовал его в .m. Есть что-то еще, что я должен сделать? - person Pkolms; 07.07.2012