ios uipangesturerecognizer

ios UIPanGestureRecognizer puntero posición



(3)

Creo que una forma simple de algo como esto es obtener la xey del toque y su seguimiento, una vez que tenga 2 puntos (digamos X: 230 Y: 122), configure el desplazamiento de la vista UIScroll a la x e y .

No estoy seguro exactamente de cómo llegué a esta respuesta ... Si no me ayuda, no me voten. Todavía soy un noob D:

UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(pan:)]; [self addGestureRecognizer:panRecognizer]; - (void)pan:(UIPanGestureRecognizer *)gesture { NSLog(@"%f", [gesture translationInView:self].x); }

El código anterior registrará la posición relativa de mi panorama actual, pero ¿cómo puedo obtener la posición absoluta para la vista en la que estoy?

Simplemente quiero deslizar un UIImageView a donde sea que esté el dedo del usuario.


translationInView le ofrece la traducción de la bandeja (cuánto ha cambiado x) y no la posición de la bandeja en la vista (el valor de x). Si necesita la posición de la bandeja, debe usar el método locationInView .

Puede encontrar las coordenadas en relación con la vista de la siguiente manera:

- (void)pan:(UIPanGestureRecognizer *)gesture { NSLog(@"%f", [gesture locationInView:self].x); }

O en relación con la supervisión:

- (void)pan:(UIPanGestureRecognizer *)gesture { NSLog(@"%f", [gesture locationInView:self.superview].x); }

O en relación a la ventana:

- (void)pan:(UIPanGestureRecognizer *)gesture { NSLog(@"%f", [gesture locationInView:self.window].x); }


Rápido

Ubicación relativa ( CGPoint ) de su gesto a la self.view :

print( gesture.locationInView(self.view) )