在view上加UITapGestureRecognizer,按鈕不觸發單擊事件的處理方法


  UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];

    singleTap.delegate = self;

    [self.view addGestureRecognizer:singleTap];

    [singleTap release];


- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch

{

    if ([touch.view isKindOfClass:[UIButton class]]) {

        return NO;

    }

    

    if ([touch.view isKindOfClass:[UITableViewCell class]]) {

        return NO;

    }

    if ([touch.view isKindOfClass:[UIScrollView class]]) {

        return YES;

    }

    return NO;

}


需要加UIGestureRecognizerDelegate這個協議

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章