2014-02-04 3 views
-1

Каковы различные способы распознавания касания UIButton?Способы распознавания UITouch для UIButton

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

+4

Что значит «IBAction, похоже, не работает с тем, что я хочу»? Что ты пытаешься сделать? По возможности отправьте код. – Gad

+0

Будьте конкретны в своем вопросе ... просто прочитайте свой вопрос один раз ... Думаете, кто-нибудь здесь поможет вам в том, что вы только что попросили? – Ajay

+0

@GadMarkovits, пожалуйста, перейдите по этой ссылке: http://stackoverflow.com/questions/21550771/does-changing-a-buttons-title-prevent-further-action?noredirect1_comment32548774_21550771 - после того как я изменил название кнопки, связанная с ним функция IBaction больше не называется; Кроме того, иногда я могу быть двусмысленным, но я думаю, что мой вопрос совершенно ясен. IBAction не распознает касание моей кнопки в определенных ситуациях, и я хочу обойти ее – user3266395

ответ

0

Пробег: UITapGestureRecognizer.

// - Для identifing касание признать

UITapGestureRecognizer *singleTapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(touchIdentifier:)]; 
    singleTapGestureRecognizer.numberOfTapsRequired = 1; 
    singleTapGestureRecognizer.enabled = YES; 
    singleTapGestureRecognizer.cancelsTouchesInView = NO; 
    [your_button addGestureRecognizer:singleTapGestureRecognizer]; 

метод для работы

-(void)touchIdentifier:(UITapGestureRecognizer*)gesture 
{ 
    NSLog(@" Current button ID %d \n",gesture.view.tag); 
} 
0

привет U может пойти с UISwipe Recognier

UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] 
             initWithTarget:self action:@selector(handleSwipe:)]; 
swipeRight.direction = UISwipeGestureRecognizerDirectionRight; 
[imgView_ addGestureRecognizer:swipeRight];   
[swipeRight release]; 
UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] 
             initWithTarget:self action:@selector(handleSwipe:)]; 
swipeLeft.direction = UISwipeGestureRecognizerDirectionLeft; 
[imgView_ addGestureRecognizer:swipeLeft]; 
[swipeLeft release];  

Но НЕ забудьте установить UserInteractionEnabled для представления

Смежные вопросы