У меня есть распознаватель жестов пинч, прикрепленный к моему scrollView (один поверх стандартного). Я пытаюсь включить и отключить его на определенных уровнях масштабирования, но он не работает. Я использую команды:
[self.pinchGesture setEnabled:NO];
and
[self.pinchGesture setEnabled:YES];
для включения и отключения жеста Я пытаюсь отладить его и использую этот код для распечатки описания моих жестов:
NSArray *gestures = [self.scrollView gestureRecognizers];
for (UIGestureRecognizer *gesture in gestures) {
NSLog(@"%s, gesture: %@", __FUNCTION__, [gesture description]);
}
Я вижу, что для моего собственного жеста это выглядит так:
gesture: <UIPinchGestureRecognizer: 0x88a62d0; state = Possible; enabled = NO; view = <UIScrollView 0x880c360>; target= <(action=handlePinch
Таким образом, даже если для него установлено значение enabled = NO
, пинч все равно вызывает метод handlePinch :. Для этого есть причина? Или мне нужно использовать [self.scrollView setGestureRecognizers:<#(NSArray *)#>
, чтобы убрать этот жест щипка? Если я собираюсь пойти по такому пути, нужно ли мне циклически проходить через мои жесты для scrollView, сохранять ссылки на них, чем устанавливать их, чтобы я не сбрасывал свой собственный жест повышения? Спасибо.