美文网首页
tableview和collectionview的代理点击事件和

tableview和collectionview的代理点击事件和

作者: yycache | 来源:发表于2020-03-16 17:41 被阅读0次

产生此类问题,原因在于单击手势先响应了 将tableview或者collectionview的事件给拦截所导致。所以,通过手势代理,不进行拦截,即可解决此类问题。

1.通过手势的UIGestureRecognizerDelegate代理来解决此类问题

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismissBubule)];

tap.delegate = self;

[self.view addGestureRecognizer:tap];

2.实现代理方法

#pragma mark - UIGestureRecognizerDelegate

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

//注意传入的参数是当前的CollectionView 或者 tableview对象

if ([touch.view isDescendantOfView:self.collectionView]) {

return NO;

}

return YES;

}

相关文章

网友评论

      本文标题:tableview和collectionview的代理点击事件和

      本文链接:https://www.haomeiwen.com/subject/jdbnehtx.html