Обнаружение касания подпредставления в главном контроллере
У меня есть класс контроллера основного вида, который содержит UIScrollView
и ряд подпредставлений, таких как карты.
Каждая карта является объектом и покрыта UIButton
, Я хочу обнаружить нажатие на UIButton
и хочу запретить одновременное нажатие на несколько карточек.
2 ответа
Я понимаю ваш вопрос частично. Смотрите, если следующее полезно:
В вашем представлении прокрутки:
for (int i=0;i<array;i++)
{
UIButton *button=[[UIButton alloc]initWithFrame:CGRectMake(scrollWidth, 5,50,40)];
button.userInteractionEnabled=YES;
UITapGestureRecognizer *rcognizer=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(buttonSelcted:)];
[button addGestureRecognizer:rcognizer];
[scrollView addSubview:button];
scrollWidth=scrollWidth+80;
}
В методе buttonSelected просто сделайте следующее:
-(void)buttonSelected:(UITapGestureRecognizer *)recognizer
{
UIButton *selectedItem=(UIButton*)recognizer.view;
//do what you want with button
}
Во всех ваших кнопках setExclusiveTouch
на. Как:
[button setExclusiveTouch:YES];
Для более подробной информации о нем вы можете обратиться: