123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- //
- // 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
|