objective-c uiimageview uitapgesturerecognizer ios6.1

objective c - gesto de toque no reconocido en uiimageview



objective-c uitapgesturerecognizer (2)

uiimageview dos uiimageview s, una en otra subview uiview ( imageview1,imageview2 ). En la primera vista, la vista de uiimageview superior está oculta ( imageview2 ) y en la segunda vista, la vista de imagen inferior está oculta ( imageview1 ).

Asignación del gesto del grifo:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)]; UITapGestureRecognizer *singleTap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];

Establezca la interacción del usuario para uiimageview en YES.

[singleTap setNumberOfTapsRequired:1]; [singleTap1 setNumberOfTapsRequired:1];

// añadiendo gesto a uiimageview

Añadir toque gesto reconocedor y selector respectivamente.

[imageview1 addGestureRecognizer:singleTap]; [imageview2 addGestureRecognizer:singleTap1];

Pero mis golpecitos no son reconocidos.

¿Alguien puede decirme dónde está el error?


Intente configurar setUserInteractionEnabled:YES antes de agregar el reconocedor de gestos.

[imageview1 setUserInteractionEnabled:YES] [imageview2 setUserInteractionEnabled:YES] [imageview1 addGestureRecognizer:singleTap]; [imageview2 addGestureRecognizer:singleTap1];

Actualizar:

Después del comentario que ha hecho, le sugiero que traiga sus puntos de vista a la parte superior antes de detectar el evento tap. Debido a que imageView principal está arriba y atrapa estos toques.

[yourparentview bringSubviewToFront:imageview1]; [yourparentview bringSubviewToFront:imageview2];


UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)]; singleTap.numberOfTapsRequired = 1; singleTap.numberOfTouchesRequired = 1; singleTap.delegate = self; [imageview1 addGestureRecogniser:singleTap]; [singleTap1 release]; imageview1.userInteractionEnabled = YES; //disabled by default