![](/img/trans.png)
[英]iOS - TapGestureRecognizer - Tap is applicable for the whole screen not for a view
[英]Add a TapGestureRecognizer to whole view except UICollectionView cells
我想添加一个TapGestureRecognizer来覆盖除UICollectionViewCell单元格之外的UICollectionViewController的整个屏幕。
我得到的最接近的是
-(void) viewDidLoad {
...
UITapGestureRecognizer *tapAnywhere = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(addBoard:)];
[self.collectionView addGestureRecognizer:tapAnywhere];
}
问题:当我点击一个单元格时,不会调用prepareForSegue方法。 UITapGestureRecognizer似乎涵盖了单元格。
UICollectionViewController中的哪个View是连接GestureRecognizer以保留其默认单元格“tap to segue”功能的正确方法?
实现Gesture Recognizer委托方法
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
if ([touch.view isKindOfClass:[UICollectionViewCell class]]) //It can work for any class you do not want to receive touch
{
return NO;
}
else
{
return YES;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.