如何判断 UIScrollView 的方向是要滚动的?

Posted

技术标签:

【中文标题】如何判断 UIScrollView 的方向是要滚动的?【英文标题】:How to judge the direction of the UIScrollView is going to scroll? 【发布时间】:2017-06-16 06:18:40 【问题描述】:

注意:我的问题是scrollView的方向滚动,而不是滚动。也就是说,当用户滚动scrollView时,我们可以得到方向scrollView 会在 scrollView 开始滚动之前滚动吗?

有什么想法吗?提前致谢。

【问题讨论】:

看到这个***.com/questions/13797005/… 另见***.com/questions/11015898/… 【参考方案1】:

通过使用滚动视图委托,您可以识别。

目标 C:

- (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView 
    CGPoint point = [scrollView.panGestureRecognizer translationInView:scrollView.superview];
    if (point.y > 0) 
        // Dragging down
     else 
        // Dragging up
    

斯威夫特:

 func scrollViewWillBeginDecelerating(_ scrollView: UIScrollView) 
        let actualPosition = scrollView.panGestureRecognizer.translation(in: scrollView.superview)
        if (actualPosition.y > 0)
            // Dragging down
        else
            // Dragging up
        
    

【讨论】:

作为带有objective c 标记的问题,您应该在objective c 中写下您的答案! @Lion 感谢您的信息。我已经更新了答案。 现在好多了!

以上是关于如何判断 UIScrollView 的方向是要滚动的?的主要内容,如果未能解决你的问题,请参考以下文章

设置 UIScrollview 滚动方向

UIScrollView - 检测layoutSubviews中的滚动与方向变化?

UIScrollView 在分页时确定 scrollViewDidEndDragging 上的滚动方向

如何检测scrollView的滚动方向?

检查 UIScrollView 中的滚动方向

如何同步无限的 UIScrollView?