translationInView
è il cambiamento del delta di un gesto. Se sposti il dito verso sinistra di 20 punti, otterrai (-20.0, 0.0)
, è già "assoluto" in questo senso.
Ciò che si intende probabilmente è che si desidera il locationInView
, relativo alla vista passata attraverso l'argomento, anche se detta vista non è quella che riconosce gli eventi. In genere, si passa la visualizzazione del controller della vista o la vista che si prenderà cura dell'evento o la sottoview che ha più senso per l'implementazione.
Inoltre, tenere a mente, se è necessario il vero in assoluto, è possibile consegnare nil
attraverso gli argomenti, e restituisce rispetto alla finestra (aka. "Assoluto")
E, se avete bisogno di fare la logica con altre viste, è possibile convertire le coordinate da una vista a un'altra con i metodi di istanza UIView
: convertRect:fromView:
, convertRect:toView:
, convertPoint:fromView:
, convertPoint:toView:
. Questi metodi accettano anche nil
come argomento della vista per indicare "assoluto" per la finestra.
Fantastico! Ho completamente perso il punto che questi gesti sono derivati da UIGestureRecognizer! Ancora una volta, grazie mille! – Ravi
Oh BTW, locationInView era quello che stavo cercando ... – Ravi
@Can Secondo la documentazione 'translationInView:' fornisce il movimento totale, non il movimento delta. –