Ответ 1
хотя я не нашел решение так, как я ожидал, я нашел лучшее решение.
Просто используя UILongPressGrstureRecognizer
, неудивительно, что он способен реализовать откат и перетаскивание.
Вы должны:
- установите для параметра numberOfTapsRequired значение 1 для обнаружения начального нажатия.
- установить минимальное значение Duration, меньшее, чтобы обнаружить перетаскивание быстрее, не ожидая
например:.
UILongPressGestureRecognizer *mouseDrag = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleDrag:)];
mouseDrag.numberOfTapsRequired=1;
mouseDrag.minimumPressDuration=0.05;
[clickLeft requireGestureRecognizerToFail:mouseDrag];
чтобы обработать перетаскивание, вы должны определить состояние, чтобы обрабатывать его соответственно как непрерывный жест.