Когда вам нужно остановить распознавание жеста вашим UIPanGestureRecognizer, вы просто помещаете эту строку кода (как сказал jbat100) в -(void)move:(UIPanGestureRecognizer *)gestureRecognizer
:
gestureRecognizer.enabled = NO;
после этой строки ваше состояние жеста-распознавателя устанавливается как "UIGestureRecognizerStateCancelled"
, затем просто добавьте пару строк к вашей функции -(void)move:(UIPanGestureRecognizer *)gestureRecognizer
:
if ([gestureRecognizer state] == UIGestureRecognizerStateCancelled) {
gestureRecognizer.enabled = YES;
}
и вы сможете работать с распознавателем жестов
EDIT
Вот фрагмент кода:
- (void)move:(UIPanGestureRecognizer *)gestureRecognizer {
BOOL cancelPanGesture = YES;
if (cancelPanGesture) {
/*
After this line gesture recognizer will be disabled, state will be UIGestureRecognizerStateCancelled
and this method (move:) will fire one more time.
*/
gestureRecognizer.enabled = NO;
}
if (gestureRecognizer.state == UIGestureRecognizerStateCancelled) {
gestureRecognizer.enabled = YES;
}
}