Ios 当用户向上/向下滑动时,如何知道这一点?
我在我的Ios 当用户向上/向下滑动时,如何知道这一点?,ios,swift,uiview,uicollectionview,uiswipegesturerecognizer,Ios,Swift,Uiview,Uicollectionview,Uiswipegesturerecognizer,我在我的ViewController中有UICollectionView(请查看下面的附加图像以了解视图层次结构)。我们如何检测用户何时向上或向下滑动 无论我们是否将手势识别器添加到UIView或UICollectionView。我只想知道刷卡的姿势 我已经尝试使用堆栈溢出中的代码将手势识别器添加到UIView和UICollectionView。但是没有一个能满足我的要求 提前感谢。由于集合视图基本上是一个滚动视图,请使用scrollViewDidScroll(:)方法来识别集合视图的滚动方向
ViewController
中有UICollectionView
(请查看下面的附加图像以了解视图层次结构)。我们如何检测用户何时向上或向下滑动
无论我们是否将手势识别器添加到UIView
或UICollectionView
。我只想知道刷卡的姿势
我已经尝试使用堆栈溢出中的代码将手势识别器添加到UIView
和UICollectionView
。但是没有一个能满足我的要求
提前感谢。由于
集合视图
基本上是一个滚动视图
,请使用scrollViewDidScroll(:)
方法来识别集合视图
的滚动方向
private var lastContentOffset: CGFloat = 0.0
在上面的代码中,lastContentOffset
在滚动时跟踪collectionView
的上一个contentOffset
func scrollViewDidScroll(_ scrollView: UIScrollView) {
if (scrollView.contentOffset.y < self.lastContentOffset) {
//Scrolling up
}
else if (scrollView.contentOffset.y > self.lastContentOffset) {
//Scrolling down
}
self.lastContentOffset = scrollView.contentOffset.y
}
func scrollViewDidScroll(scrollView:UIScrollView){
if(scrollView.contentOffset.yself.lastContentOffset){
//向下滚动
}
self.lastContentOffset=scrollView.contentOffset.y
}
不要忘记遵守UICollectionViewDelegate
协议
此外,不需要添加任何单独的
手势识别器
UICollectionView
作为一个UIScrollView
将自己处理它。这太宽泛了。到目前为止你试过什么?您遇到的具体障碍是什么?你犯了什么错误?什么不起作用?你不需要任何手势记录。集合视图继承了UIScrollview,所以您可以将collectionview的委托设置为self并实现UIScrollViewDelegatemethods@Andreas-我已尝试向UIView和UICollectionView添加UIWipegestureRecognitor()。没有出现任何错误。但没有得到预期的结果。请参考此链接,了解我与此问题相关的问题-“***”@PrashantTukadiya-即使我按照您的建议做了这件事。请参阅此链接了解与我的问题相关的确切问题-“******”有许多问题涉及如何检测用户滚动视图的方向,例如和。他们应该帮忙/