2013-10-07 15 views
25

Ho aggiunto due uiimageview s, uno su un altro subview uiview (imageview1,imageview2). Nella prima vista la parte superiore uiimageview è nascosta (imageview2) e nella seconda vista la parte inferiore imageview è nascosta (imageview1).tocca gesto non riconosciuto su uiimageview

Assegnazione gesto di rubinetto:

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

Set interazione con l'utente sia per UIImageView su YES.

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

// aggiungendo gesto UIImageView

Aggiungere rispettivamente rubinetto gesto di riconoscimento e selettore.

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

Ma i miei rubinetti non vengono riconosciuti.

Qualcuno può dirmi dove si trova l'errore?

+0

Fammi sapere se hai risolto il tuo problema. –

+0

Come per il mio codice si sta lavorando bene nel paesaggio ma non si scrive in ritratto – user2706770

risposta

98

Provare a impostare setUserInteractionEnabled:YES prima di aggiungere il riconoscimento di gesture.

[imageview1 setUserInteractionEnabled:YES] 
[imageview2 setUserInteractionEnabled:YES] 

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

Aggiornamento:

Dopo il commento che avete fatto vi consiglio di portare le viste al top prima di rilevare l'evento rubinetto. Perché parent imageView è sopra e cattura questi tocchi.

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

ya avevo fatto così solo – user2706770

+0

ho aggiunto 10 imageview tutto funzionante bene eccetto uiimageview in cui un imageview è posto sopra un'altra vista immagine – user2706770

+0

per favore vedi la mia domanda aggiornata –

2
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 
+0

Il gesto di tocco funziona correttamente quando due immagini visualizzate in posizioni diverse. il problema è quando due immagini visualizzate nella stessa posizione. nascosto nel primo tempo e nascosto nel secondo tempo – user2706770

+0

Quindi vuoi passare la visibilità di imageViews al tocco dell'utente, nella stessa posizione? – n00bProgrammer

Problemi correlati