2013-03-22 3 views
7

добавить singTap и DoubleTap на вид, как код ниже:Реализовать SingleTap и DoubleTap в Objective-C

-(void)awakeFromNib{ 
    [self setUserInteractionEnabled:YES]; 
    // 
    UITapGestureRecognizer *doubleTapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTapGesture:)]; 
    doubleTapGesture.numberOfTapsRequired = 2; 
    [self addGestureRecognizer:doubleTapGesture]; 

    UITapGestureRecognizer *singleTapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTapGesture:)]; 
    singleTapGesture.numberOfTapsRequired = 1; 
    [self addGestureRecognizer:singleTapGesture]; 
} 

-(void)handleSingleTapGesture:(UITapGestureRecognizer *)singleTapGesture{ 
    [[self delegate] singleTapOnView]; 
} 

-(void)handleDoubleTapGesture:(UITapGestureRecognizer *)doubleTapGesture{ 
    [[self delegate] doubleTapOnView]; 
} 

When DoubleTap SingleTap также огонь. Как отключить singleTap, когда doubleTap? Благодаря!

ответ

11

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

[singleTapGesture requireGestureRecognizerToFail:doubleTapGesture]; 

(Это на самом деле канонический пример в UIGestureRecognizer docs for this method.)

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