// // CGXVerticalMenuContainerCollectionView.m // CGXVerticalMenuView-OC // // Created by CGX on 2018/05/01. // Copyright © 2019 CGX. All rights reserved. // #import "CGXVerticalMenuContainerCollectionView.h" @implementation CGXVerticalMenuContainerCollectionView - (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer { if (self.gestureDelegate && [self.gestureDelegate respondsToSelector:@selector(menuContainerCollectionView:gestureRecognizerShouldBegin:)]) { return [self.gestureDelegate menuContainerCollectionView:self gestureRecognizerShouldBegin:gestureRecognizer]; }else { if (self.isNestEnabled) { if ([gestureRecognizer isMemberOfClass:NSClassFromString(@"UIScrollViewPanGestureRecognizer")]) { CGFloat velocityY = [(UIPanGestureRecognizer *)gestureRecognizer velocityInView:gestureRecognizer.view].y; //x大于0就是往下滑 if (velocityY > 0) { if (self.contentOffset.y == 0) { return NO; } }else if (velocityY < 0) { //x小于0就是往上滑 if (self.contentOffset.y + self.bounds.size.height == self.contentSize.height) { return NO; } } } } } return YES; } - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { if (self.gestureDelegate && [self.gestureDelegate respondsToSelector:@selector(menuContainerCollectionView:gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:)]) { return [self.gestureDelegate menuContainerCollectionView:self gestureRecognizer:gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:otherGestureRecognizer]; } return NO; } /* // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { // Drawing code } */ @end