如何确定滚动视图何时在正 x 方向和负 x 方向上滚动了至少一个屏幕宽度



如何确定滚动视图何时在正 x 方向和负 x 方向(水平(滚动至少一个屏幕宽度?我一直在使用以下积极方向:

func scrollViewDidScroll(_ scrollView: UIScrollView) {
    if scrollview.contentOffset.x > self.view.bounds.width {
         print("Has scrolled one width in + direction")
    }
}

不太确定如何找到负面方向。有什么想法吗?

我们正在定义一个变量,该变量负责在滚动之前保存初始 x 位置的值,并将滚动视图的 contentOffset.x 值与此初始位置进行比较。

var currentContentOffsetX = 0
func scrollViewDidScroll(_ scrollView: UIScrollView) {
    if currentContentOffsetX > self.view.bounds.width {
         print("Has scrolled one width in + direction")
    } else if currentContentOffsetX < -self.view.bounds.width {
         print("Has scrolled one width in - direction")
    }
}

// to update the starting X position
func scrollViewDidEndScrollingAnimation(_ scrollView: UIScrollView) {
    currentContentOffsetX = scrollview.contentOffset.x
}

最新更新