判断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里面控制就行