判断scrollView的滚动方向

2017-08-28  本文已影响217人  __Objc
#pragma mark: - scrollDelegate
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{\
    [NSObject cancelPreviousPerformRequestsWithTarget:self];
    [self performSelector:@selector(scrollViewDidEndScrollingAnimation:) withObject:nil afterDelay:0.3];
    
    if (scrollView == self.tableView) {
        
        CGFloat velocity = [scrollView.panGestureRecognizer velocityInView:scrollView].y;
        if (velocity < -5) {//上滚
           
        } else if (velocity > 5) {下滚
            
        }
    }
    
    
}

-(void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
    [NSObject cancelPreviousPerformRequestsWithTarget:self];
    //这个代理方法用于和scrollViewdidScroll组合使用可判断当前scrollView有没有结束滚动
}
scrollView有滚动事件   和 拖拽事件
两个事件触发的代码比较分散不利于控制
所以组合使用只需要在scrollViewDidScrollView里面控制就行


上一篇下一篇

猜你喜欢

热点阅读