A-Hing
12/5/2019 - 11:32 AM

iOS 判断UIScrollView是上拉还是下拉

//@property (nonatomic, assign) NSInteger lastcontentOffset; //添加此属性的作用,根据差值,判断ScrollView是上滑还是下拉
//<UIScrollViewDelegate >
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{    
    CGFloat hight = scrollView.frame.size.height;
    CGFloat contentOffset = scrollView.contentOffset.y;
    CGFloat distanceFromBottom = scrollView.contentSize.height - contentOffset;
    CGFloat offset = contentOffset - self.lastcontentOffset;
    self.lastcontentOffset = contentOffset;

    if (offset > 0 && contentOffset > 0) {
       NSLog(@"上拉行为");
    }
    if (offset < 0 && distanceFromBottom > hight) {
        NSLog(@"下拉行为");
    }
    if (contentOffset == 0) {
        NSLog(@"滑动到顶部");
    }
    if (distanceFromBottom < hight) {
          NSLog(@"滑动到底部");
    }
}