UILongPressGestureRecognizer для приема гибкого количества касаний

#ios #swift #gesture #uilongpressgesturerecogni

#iOS #swift #жест #uilongpressgesturerecogni

Вопрос:

У меня есть UILongPressGestureRecognizer, который запускается, когда на экране есть 1 палец. Однако, как только я нажимаю 2 пальца, функция больше не запускается, и мне нужно создать новый жест для 2 пальцев. Как заставить UILongPressGestureRecognizer принимать гибкое количество касаний?

 let longScreenGesture = UILongPressGestureRecognizer(target: self, action: #selector(screenTapped(_:)))
longScreenGesture.minimumPressDuration=0.1
longScreenGesture.allowableMovement=0
longScreenGesture.numberOfTouchesRequired=1
sceneView.isMultipleTouchEnabled=true
sceneView.addGestureRecognizer(longScreenGesture)

@objc func screenTapped(_ sender: UILongPressGestureRecognizer)
{
        print(sender.numberOfTouches) // -> Always displays 1
}
 

Ответ №1:

В итоге я использовал touchesBegan / Moved / Ended и самостоятельно анализировал жесты