判斷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

相關文章
相關標籤/搜索