我已經加入簡單UITapGestureRecognizer
到UIImageView
創造手勢方法被調用,當用戶水龍頭/觸摸UIImageView
爲什麼UITapGestureRecognizer不適用於UIImageView?
我的代碼是:
UITapGestureRecognizer *eagleTapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(eagleTapGestureIsCall:)];
eagleTapGesture.numberOfTapsRequired = 1;
[self.egaleImgView addGestureRecognizer:eagleTapGesture];
手勢法:
- (void)eagleTapGestureIsCall:(UITapGestureRecognizer *)recognizer
{
CGPoint location = [recognizer locationInView:[recognizer.view superview]];
NSLog(@"Eagle is Tapped X - %f",location.x);
NSLog(@"Eagle is Tapped Y - %f",location.y);
}
這裏如果我在UIView
,而不是self.egaleImgView
再加入手勢它的工作原理(我指手勢的方法被調用)但爲什麼它不工作的self.egaleImgView
???
谷歌搜索後,我發現,可能是UIView
攔截觸摸之前,他們可以達到UIImageView
。
所以我加了下面一行的viewDidLoad
self.view.userInteractionEnabled = NO; /// Here i set userInteractionEnabled = NO;
下面開始介紹更好地理解結構。
main UIView
| |
(Sub view) mainBackGroungImageView //// size is similar to size of main UIView
| |
(Sub view) gestureAdded ImageView
編輯:
對不起你們又忘了提,我已經加入self.egaleImgView.userInteractionEnabled = YES;
我的ImageView,但它不是爲我工作。
請給我關於我的問題的建議。
在此先感謝。
你啓用用戶互動?在圖像視圖本身。 –
默認情況下,對圖像視圖禁用用戶操作 – amar
請勿在視圖上禁用'userInteraction'。 –