Событие поднятия одним пальцем для UIPinchGestureRecognizer
У меня проблемы с UIPinchGestureRecognizer
, Есть ли способ (переменная / метод) для обнаружения события подъема одного пальца в его обработчике? Я имею в виду, я сначала положил два пальца на экран и ввел жест щепотка начал / изменил состояние. Затем один палец остается неподвижным на экране, а другой поднимается вверх.
Я заметил, что состояние измененного жеста может быть запущено, когда один палец поднимается, но numberOfToucher по-прежнему равно 2. Есть ли другие переменные / методы, чтобы получить больше информации о событии?
Я пытался подкласс UIPinchGestureRecognizer
и добавить touchesEnded
обнаружить событие подъема пальца. Это работает, но последний "измененный жест" (см. Выше) запускается вправо ПОСЛЕ прикосновения к закруглению. Поэтому кажется, что единственное решение - установить флаг в touchesEnded и проверить этот флаг в первом следующем вызове в обработчике жестов, что, я думаю, является плохим решением.
Есть ли лучшие решения? Благодарю.
1 ответ
Проверьте номер объекта недвижимости. Это изменилось после движения пальца, без правого пальца вверх. Проверено в iOS9.
UIPinchGestureRecognizer * gr = [ [ UIPinchGestureRecognizer alloc ] initWithTarget:self action:@selector(pinchAction:) ];
[ self.view addGestureRecognizer:gr ];
- (void)pinchAction:(UIPinchGestureRecognizer *)gr
{
if (gr.numberOfTouches < 2)
{
//
}
}