如何在 Swift 中获取 UIScrollView 的垂直方向?

时间:2022-10-16
本文介绍了如何在 Swift 中获取 UIScrollView 的垂直方向?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

如何在 VC 中获取向上/向下的滚动/滑动方向?

How can I get the scroll/swipe direction for up/down in a VC?

我想在我的 VC 中添加一个 UIScrollView 或其他东西,可以查看用户是否向上或向下滑动/滚动,然后隐藏/显示 UIView 取决于它是否是向上/向下手势.

I want to add a UIScrollView or something else in my VC that can see if the user swipes/scrolls up or down and then hide/show a UIView depending if it was an up/down gesture.

推荐答案

如果你使用 UIScrollView 那么你可以从 scrollViewDidScroll: 功能.您需要保存它的最后一个位置(contentOffset)并按以下方式更新它:

If you use an UIScrollView then you can take benefit from the scrollViewDidScroll: function. You need to save the last position (the contentOffset) it have and the update it like in the following way:

// variable to save the last position visited, default to zero
private var lastContentOffset: CGFloat = 0

func scrollViewDidScroll(scrollView: UIScrollView!) {
    if (self.lastContentOffset > scrollView.contentOffset.y) {
        // move up
    }
    else if (self.lastContentOffset < scrollView.contentOffset.y) { 
       // move down
    }

    // update the new position acquired
    self.lastContentOffset = scrollView.contentOffset.y
}

当然还有其他方法可以做到这一点.

There are other ways of do it of course this is one to them.

希望对你有所帮助.

这篇关于如何在 Swift 中获取 UIScrollView 的垂直方向?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一条:具有动态高度的子视图的自动布局 UIScrollView 下一条:使用 UIScrollView 用两根手指滚动

相关文章

最新文章