在自定義UITableViewCell 和UICollectionViewCell的時(shí)候秉馏,需要有個(gè)scrollerView滑動(dòng)的時(shí)候娘纷,發(fā)現(xiàn) didSelectItemAtIndexPath: indexPath 這個(gè)點(diǎn)擊方法被覆蓋了散吵,不執(zhí)行奸绷。
解決辦法:
在自定義Cell中:
self.scrollView.userInteractionEnabled = NO;
[self.contentView addGestureRecognizer: self.scrollView.panGestureRecognizer];
這樣子就可以完美解決Cell的點(diǎn)擊事件被覆蓋無法執(zhí)行的問題了
此方法參考http://blog.csdn.net/NB_Coder/article/details/71153923
但是此方法會(huì)發(fā)生 滑動(dòng)區(qū)域超出scrollView時(shí) 也能滑動(dòng)scrollView.因此可以添加如下方法
@interface UIPenetrateScrollView :UIScrollView
@end
@implementation UIPenetrateScrollView
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
CGPoint gestureRecognizerPoint = [gestureRecognizer locationInView:self];
return CGRectContainsPoint(self.frame, gestureRecognizerPoint);
}
@end