2013-10-07 65 views
25

我在屏幕上添加了兩個uiimageview s,一個在另一個subview uiviewimageview1,imageview2)上。在第一個視圖中,隱藏頂部uiimageviewimageview2),在第二個視圖中隱藏底部imageviewimageview1)。點擊手勢在圖片視圖上不被識別

分配敲擊手勢:兩者的UIImageView爲YES

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

集的用戶交互。

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

//添加手勢的UIImageView

分別添加敲擊手勢識別器和選擇器。

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

但我的水龍頭不被識別。

任何人都可以告訴我錯誤在哪裏嗎?

+0

讓我知道如果你解決你的問題。 –

+0

根據我的代碼它的Wrking很好的風景,但不是在肖像wrking – user2706770

回答

98

在添加手勢識別器之前嘗試設置setUserInteractionEnabled:YES

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

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

更新:

你做,我建議你檢測敲打事件之前把你的意見頂部的註釋之後。由於父圖像視圖在上方並捕捉這些水龍頭。

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

亞我已經這樣做只有 – user2706770

+0

我已經添加10 imageview所有工作正常除了uiimageview其中一個imageview被放置在另一個圖像視圖 – user2706770

+0

請查看我更新的問題 –

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

當兩個imageview放置在不同位置時,輕拍手勢正常工作。問題是當兩個imageview放置在相同的位置。第一次隱藏一個,然後第二次隱藏另一個 – user2706770

+0

所以你想在用戶點擊,在同一位置切換imageViews的可見性? – n00bProgrammer