UIGestureRecognizerStateChanged

UIGestureRecognizerStateChanged

我正在研究将UIView拖到LongPressGesture之后。一些使用touchesMoved:的代码,一些代码检查UIGestureRecognizerStateChange。我还是不明白,哪个更好?

最佳答案

manual:

手势识别器识别到离散手势时,会将state属性设置为UIGestureRecognizerStateRecognized。如果手势是连续的,它将首先将state属性设置为UIGestureRecognizerStateBegan;然后,对于手势的每次位置更改,它将属性设置(或重置)为UIGestureRecognizerStateChanged。手势结束后,它将状态设置为UIGestureRecognizerStateEnded。如果手势识别器在任何时候意识到该多点触摸序列都不是其手势,则将其状态设置为UIGestureRecognizerStateFailed。

因此,如果用户触摸屏幕,则始终会生成touchedMoved事件,并且如果它处于连续手势的中间,也会导致UIGestureRecognizerStateChanged状态被设置。

10-06 05:54