使用UIPanGestureRecognizer的Swift iOS应用程序:
用户通过将手指从屏幕上抬起来完成平移手势时会触发 .state = .Ended
。这对我来说是成功的。
然而,当用户将手指从屏幕上拖下来时也会发生同样的情况,这对我来说是一个不成功的平底锅但是如何区别于前者呢?
答案 0 :(得分:1)
由于手指离开屏幕边缘,因此用户抬起手指和手势结束时,您无法区分手势结束。您已经非常正确地推断出这一点。因此,您必须满足于可以做的事情。
手势结束时,请查看手指的位置。 (手势识别器会很高兴地告诉你这一点。)如果它位于屏幕边缘,或者甚至可能位于屏幕边缘的几个点之内,你只需要假设任意,这意味着用户拖出了超出范围"。