如何检测UITableView仅在iOS中向下滚动?

时间:2014-02-08 09:39:16

标签: uitableview ios7 uiscrollview

现在,我可以使用以下代码检测UITableView向上和向下滚动。

但是我只想在向下滚动时触发事件。不包括上滚动。

使用这些代码- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate

NSInteger currentOffset = scrollView.contentOffset.y;
    NSInteger maximumOffset = scrollView.contentSize.height - scrollView.frame.size.height;

if (maximumOffset - currentOffset <= 20.0) {
        //        [self methodThatAddsDataAndReloadsTableView];

如何仅检测UITableView中向下滚动到底部。

1 个答案:

答案 0 :(得分:2)

当拖动结束时,您可以将当前contentOffset与目标contentOffset进行比较。或者检查scrolling速度符号:

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView 
                     withVelocity:(CGPoint)velocity 
              targetContentOffset:(inout CGPoint *)targetContentOffset {
    NSLog(@"%@", scrollView.contentOffset.y > targetContentOffset->y ? @"top" : @"bottom");
    NSLog(@"%@", velocity.y > 0 ? @"bottom" : @"top");
}