判断scrollView的滑动方向

第一种方式:spa

float lastContentOffset;
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView
{
    lastContentOffset = scrollView.contentOffset.y;
}
- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView
{
    if (lastContentOffset < scrollView.contentOffset.y){
        NSLog(@"向上滚动");
    }else{
        NSLog(@"向下滚动");}
}

这种方式基本上能够知足需求,可是将scrollView滑到顶部或底部后连续拖拽拉动时会计算不许确code

 

第二种方式:blog

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat yoffset = scrollView.contentOffset.y;
    CGPoint vel = [scrollView.panGestureRecognizer velocityInView:scrollView];
    if (vel.y < -5) {
        //向上拖动
    }else if (vel.y > 5) {
        //向下拖动
    }else if (vel.y == 0) {
        //中止拖拽
    }
}

通过检验这种方式不会出现误差ci

 

by:初光夫get

相关文章
相关标签/搜索