translationInView
es el cambio delta de un gesto. Si mueve su dedo hacia la izquierda en 20 pt, obtendrá (-20.0, 0.0)
, ya es "absoluto" en ese sentido.
Lo que probablemente quiere decir es que quiere locationInView
, que en relación con la vista entregada a través del argumento, incluso si dicha vista no es la que reconoce los eventos. Normalmente, le daría la vista del controlador de vista, o la vista que se encargará del evento, o la subvista que tenga más sentido para su implementación.
Además, tenga en cuenta, si usted necesita el absoluto real, se puede entregar nil
a través de los argumentos, y lo devuelve con relación a la ventana (aka. "Absoluta")
Y, si es necesario hacer lógica con otros puntos de vista, puede convertir la coordenada de una vista a otra con los métodos de instancia UIView
: convertRect:fromView:
, convertRect:toView:
, convertPoint:fromView:
, convertPoint:toView:
. Estos métodos también aceptan nil
como el argumento de vista para significar "absoluto" a la ventana.
¡Impresionante! ¡Me olvidé por completo de que estos gestos se derivan de UIGestureRecognizer! ¡Una vez mas, muchas gracias! – Ravi
Oh, por cierto, locationInView era lo que estaba buscando ... – Ravi
@Can De acuerdo con los documentos 'translationInView:' da el movimiento total, no el movimiento delta. –