UIImageView какао addTarget с дополнительным параметром - PullRequest
2 голосов
/ 21 октября 2010

С помощью цикла я добавляю UIImageView в UIScrollView. Мне нужно добавить дополнительный параметр addTarget, чтобы при нажатии я мог регистрировать индекс.

[imageButton addTarget:self action:@selector(buttonPushed:) 
      forControlEvents:UIControlEventTouchUpInside];


-(IBaction) buttonPushed: (int) index
{
    NSLog(@"%d",index);
}

Как мне этого добиться?

Ответы [ 2 ]

2 голосов
/ 21 октября 2010

Когда вы добавляете цель, вызываемый метод может не иметь аргументов (например, buttonPushed) или иметь один (buttonPushed:), который является элементом управления, отправляющим событие (в данном случае, вашей кнопкой).Если вы хотите индекс или любое другое значение, вам нужно установить его на кнопку отправки события.Например, когда вы настраиваете кнопки:

myButtons = [NSArray arrayWithObjects:myFirstButton, mySecondButton, nil];
[myFirstButton addTarget:self action:@selector(buttonPushed:) 
  forControlEvents:UIControlEventTouchUpInside];
[mySecondButton addTarget:self action:@selector(buttonPushed:) 
  forControlEvents:UIControlEventTouchUpInside];

и реализуете свое действие как

- (IBaction)buttonPushed:(UIButton *)button
{
    NSLog(@"%d",[myButtons indexOfObject:button]);
}
1 голос
/ 23 апреля 2011

Используйте свойство tag кнопки

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