Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift scrollViewDidScroll-通过对角滑动检测用户的预期方向_Swift_Uiscrollview - Fatal编程技术网

Swift scrollViewDidScroll-通过对角滑动检测用户的预期方向

Swift scrollViewDidScroll-通过对角滑动检测用户的预期方向,swift,uiscrollview,Swift,Uiscrollview,我不确定这是不是一个愚蠢的问题 在scrollViewDidScroll中,是否可以判断用户是否主要沿x轴或y轴滚动,以收集用户在对角滚动时的意图 例如,我们收集手势 let translation=scrollView.PangestureRecognitor.translation(在:scrollView.superview中) 并用 translation.y和 translation.x 如果用户的手势是对角的,有没有办法发现用户希望滚动的方向 这似乎是一个有点做作的问题,但当y轴手势

我不确定这是不是一个愚蠢的问题

在scrollViewDidScroll中,是否可以判断用户是否主要沿x轴或y轴滚动,以收集用户在对角滚动时的意图

例如,我们收集手势

let translation=scrollView.PangestureRecognitor.translation(在:scrollView.superview中)

并用

translation.y
translation.x

如果用户的手势是对角的,有没有办法发现用户希望滚动的方向

这似乎是一个有点做作的问题,但当y轴手势隐藏或显示导航栏时,我遇到了这个问题,但当使用x轴手势水平滚动表中的集合视图时,导航栏的可见性应该是持久的。

这不是一个“愚蠢”的问题,但它是不明确的。试着用更具体的方式重新思考你的问题。如果我开始从右向左拖动,然后直接向上拖动,这是一个“对角线”方向吗?如果我向左向右拖动,然后向左向下拖动,然后再向上拖动。。。那是对角线吗?我想你会想要跟踪当前触摸位置和开始触摸位置之间的差异。。。但是如果你对你的用户界面/用户体验目标没有一个清晰的概念,这真的很难说。这不是一个“愚蠢”的问题,但它是模棱两可的。试着用更具体的方式重新思考你的问题。如果我开始从右向左拖动,然后直接向上拖动,这是一个“对角线”方向吗?如果我向左向右拖动,然后向左向下拖动,然后再向上拖动。。。那是对角线吗?我想你会想要跟踪当前触摸位置和开始触摸位置之间的差异。。。但是如果不清楚您的UI/UX目标,就很难说了。