Sobes.tech
Junior — Middle

Welke heeft een grotere belangrijke gewicht: highPriorityGesture of simultaneousGesture?

sobes.tech AI

Antwoord van AI

In iOS, bij het verwerken van gebaren, hangt de belangrijkheid af van de context en de instellingen van de UIGestureRecognizer-delegaten. Gewoonlijk, als twee gebaren gelijktijdig worden herkend, heeft highPriorityGesture prioriteit boven simultaneousGesture, als er een hogere prioriteit is ingesteld voor de eerste of als de delegate de methode gestureRecognizer:shouldBeRequiredToFailByGestureRecognizer: implementeert.

Met andere woorden, highPriorityGesture kan de uitvoering van simultaneousGesture blokkeren als dit expliciet is ingesteld in de verwerkingslogica. Zonder expliciete instellingen kunnen beide gebaren gelijktijdig worden herkend.

Voorbeeld:

func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldBeRequiredToFailBy otherGestureRecognizer: UIGestureRecognizer) -> Bool {
    if gestureRecognizer == simultaneousGesture && otherGestureRecognizer == highPriorityGesture {
        return true // zorgt ervoor dat simultaneousGesture wacht op highPriorityGesture
    }
    return false
}

Dus, highPriorityGesture heeft meestal een grotere gewicht als dit expliciet wordt aangegeven in de delegate.