Objective-C Как я могу обнаружить мультитач, которые приходят из многих подвид - PullRequest
1 голос
/ 09 августа 2011

Objective-C

Предположим, у меня есть имя основного вида, у которого есть три подпредставления A, B и C.

A - это scrollView. И B, и C - изображение.

Мне нужно обнаружить мультитач на главном экране. Например, если вы коснитесь экрана двумя пальцами, появится окно с предупреждением.

Если два пальца касаются одного и того же подпредставления, все будет в порядке.

Но если одним касанием пальца при просмотре B и другим касанием при просмотре C возникнет проблема, поскольку основной вид получит 2 последовательных касания, а не мультитач.

Интересно, есть ли решение этой проблемы?

Спасибо за все ответы.

Ответы [ 2 ]

1 голос
/ 09 августа 2011

Вы могли бы сделать это -

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(multiTap:)];
[tap setNumberOfTapsRequired:1];
[tap setNumberOfTouchesRequired:1];
[self.yourView addGestureRecognizer:tap];
[tap release];

Вы можете реализовать multiTap, который обрабатывает это событие. Но, скорее всего, то, что вы пытаетесь сделать, может сбить пользователя с толку. Во всяком случае, это ваш звонок. Технологически это возможно ...

0 голосов
/ 15 августа 2012

Теоретически, одним из возможных путей решения проблемы является добавление прозрачного стеклянного вида, прежде всего, в качестве подпредставления к основному виду, так что это будет родственный вид A, B, C, который получит все ответвления.Присоедините UITapGestureRecognizer и установите UIGestureRecognizerDelegate для всех подпредставлений, чтобы исключить взаимное исключение распознавания жестов в представлениях D и A одновременно с помощью метода shouldRecognizeSim одновременноouslyWithGestureRecognizer.

На практике лучшим решением для них не являетсяпроблема вообще, и вместо того, чтобы пытаться распознать касания несколькими пальцами, которые могут выпадать на разных подпредставлениях, перейдите к распознаванию ущипом и увеличением (UIPinchGestureRecognizer), так как оно не будет конфликтовать с обычными UITapGestureRecognizer, и у вас не будет этой проблемы.

...