Как передать данные через @selector после нажатия кнопки? - PullRequest
4 голосов
/ 29 марта 2012

Я делаю кнопку с помощью кода. У меня есть следующая строка кода для запуска метода при нажатии кнопки:

[imagesButton addTarget:self action:@selector(photoClicked:) forControlEvents:UIControlEventTouchDown ];

Проблема в том, что я не могу передать данные методу через @selector; Если бы у кнопки было имя фонового изображения "background.png", как бы я отправил имя фонового изображения методу при нажатии кнопки? Это все ДОЛЖНО быть через код.

Спасибо!

-Shredder

Ответы [ 2 ]

1 голос
/ 29 марта 2012

должен быть способ прокомментировать ответ, но я не знаю, что это.В любом случае, гобот выше меня забыл написать (id) перед отправителем в объявлении метода.В противном случае пример Гобота в порядке.

1 голос
/ 29 марта 2012

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

- (void)photoClicked:(id)sender {
    UIImage bg = [sender currentBackgroundImage]
}
...