iPhone SDK: программно изменить IBAction - PullRequest
1 голос
/ 09 февраля 2010

Есть ли способ, которым я могу программно изменить IBAction UIButton?

Я знаю, что могу просто создать две кнопки и использовать button.hidden = BOOL, но я бы предпочел просто изменить сам IBAction.

Ответы [ 3 ]

12 голосов
/ 09 февраля 2010

Конечно. Вы можете использовать addTarget:forControlEvents: и removeTarget:action:forControlEvents: для управления соединениями между методами действий и элементами управления вручную. Оба метода в UIControl.

3 голосов
/ 09 февраля 2010

Я не уверен, что понимаю вопрос? Почему бы не сделать так, чтобы IBAction вызывал пользовательский метод и вводил некоторую логику о том, какое действие предпринять в этом методе?

2 голосов
/ 09 февраля 2010

Sure:

-removeTarget: action: forControlEvents: для удаления старого действия

-addTarget: action: forControlEvents: для добавления нового действия

...