Почему он не распознает мой селектор? - PullRequest
0 голосов
/ 01 июля 2011

Я хочу изменить действие UIButton , и это дает мне исключение при касании кнопки.

[grabRedeem removeTarget:self action:@selector(grabbOffer:) forControlEvents:UIControlEventTouchUpInside];
[grabRedeem addTarget:self action:@selector(redeemOffer:) forControlEvents:UIControlEventTouchUpInside];

grabbOffer и redeemOffer - это IBActions, которые реализованы без параметров.

Завершение приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '- [DetailViewController grabbOffer:]: нераспознанный селектор, отправленный экземпляру 0x1e8bf0'

В чем может быть причина

Ответы [ 2 ]

3 голосов
/ 01 июля 2011

Вы пытались удалить двоеточие:

[grabRedeem removeTarget:self action:@selector(grabbOffer) forControlEvents:UIControlEventTouchUpInside];
[grabRedeem addTarget:self action:@selector(redeemOffer) forControlEvents:UIControlEventTouchUpInside];

вы используете точку с запятой, когда хотите использовать параметр:

-(void)grabbOffer:(id)sender;
1 голос
/ 01 июля 2011

Если ваша функция реализована без параметров, используйте: @selector (grabbOffer) вместо @selector (grabbOffer:)

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