2011-06-01 121 views
2

我有一個通用的二進制應用程序,目前正在iPad版本的應用程序上工作。 iPad使用的是uitabbarcontroller,第二個選項卡上有6張圖片,添加UIPinchGesture時沒有響應。我有userInteractionEnabled=YES;我嘗試以編程方式添加圖像視圖,然後添加手勢識別器,但仍然沒有任何工作。UIPinchGestureRecognizer沒有響應

我試着將代理設置到視圖控制器並實現其中一個代理方法,但沒有得到任何響應。下面是我在做什麼的代碼示例:

UIImageView *img2 = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"img2-large.png"]]; 
img2.frame = CGRectMake(20, 20, 100, 100); 
[img2 setUserInteractionEnabled:YES]; 
img2.contentMode = UIViewContentModeScaleAspectFit; 
[self.view addSubview:img2];  

UIPinchGestureRecognizer *img2Pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(img2Pinch:)]; 
[img2 addGestureRecognizer:img2Pinch]; 
[img2Pinch release]; 


- (void)img2Pinch:(UIPinchGestureRecognizer *)sender { 
     NSLog(@"HERE"); 
} 

我敢肯定,這是愚蠢的東西我失蹤。我之前使用過這些東西,但不能爲我的生活找出錯誤的地方。

+0

我解決我自己的問題顯然不知何故,我設法不小心把我在界面生成器視圖中啓用的用戶交互。 -1爲愚蠢。 – dbslone 2011-06-01 19:37:51

回答

11

設置userInteractionEnabledYES。缺省值是NO。此外,爲了處理多點觸摸,這是捏合,multipleTouchEnabled需要設置爲YES

+0

無法得到這個工作,我甚至嘗試過使用UITapGestureRecognizer。任何其他想法? img2.multipleTouchEnabled = YES; img2.userInteractionEnabled = YES; UIPinchGestureRecognizer * img2Pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(img2Pinch :)]; [img2 addGestureRecognizer:img2Pinch]; [img2Pinch release]; – dbslone 2011-06-01 18:45:47

+0

嘗試將canBecomeFirstResponder設置爲YES。 – csano 2011-06-01 18:53:44

+0

我解決了我自己的問題,顯然我設法在接口生成器中意外啓用了用戶交互功能。 -1爲愚蠢 – dbslone 2011-06-01 19:39:33

0

你對此有何看法? 它是一個滾動視圖嗎?

img2.multipleTouchEnabled = YES,默認情況下不啓用多點觸摸,捏點需要多個手指。

img2Pinch被正確地釋放)