UIPinchGestureRecognizer не отвечает - PullRequest
2 голосов
/ 01 июня 2011

У меня есть универсальное двоичное приложение, и в настоящее время я работаю над версией приложения для iPad. IPad использует контроллер uitabbar, и на второй вкладке у меня есть 6 изображений, и при добавлении UIPinchGesture он не отвечает. У меня userInteractionEnabled=YES; Я попытался добавить представление изображения программно, а затем добавить распознаватель жестов, но все равно ничего не работает.

Я попытался установить делегат для контроллера представления и реализовать один из методов делегата, но не получил никаких ответов. Ниже приведен пример кода того, что я делаю:

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");
}

Я уверен, что это что-то глупое, что я скучаю. Я использовал это раньше, но не могу понять, что происходит не так.

Ответы [ 2 ]

11 голосов
/ 01 июня 2011

Установите userInteractionEnabled в YES.По умолчанию NO.Кроме того, для того, чтобы справиться с мультитачами, что и есть пинч, multipleTouchEnabled необходимо установить на YES.

0 голосов
/ 02 июня 2011

В какой вид вы помещаете его?Это режим прокрутки?

Также img2.multipleTouchEnabled = YES, мультитач не включен по умолчанию, для пинча требуется несколько пальцев.

(img2Pinch правильно отпущено)

...