Прокрутка панорамирование предотвращает жест щипка? - PullRequest
3 голосов
/ 18 мая 2011

Я создаю библиотеку листов изображений для использования в игровом проекте, чтобы вписаться в нашу существующую среду. В настоящее время я использую UIScrollView (с пустым представлением), чтобы позволить мне перехватить приятную физику для панорамирования с отскоком, но мне пришлось реализовать собственный зум с помощью распознавателя жестов (по причинам, в которые я не буду вдаваться) .

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

Кто-нибудь знает способ обойти это, который не включает в себя утилизацию UIScrollView и реализацию моего собственного панорамирования?

Вот моя функция scrollViewDidScroll:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    viewingBounds.origin.x = scrollView.contentOffset.x;
    // Transform the y from UIKit coordinates into OpenGL coordinates
    viewingBounds.origin.y = world.height - viewingBounds.size.height - scrollView.contentOffset.y;
    [parentScene update]; // Render the image
}

Мой распознаватель жестов добавляется непосредственно в представление прокрутки в init:

[scrollView addGestureRecognizer:[[[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(didReceivePinch:)] autorelease]];

Ответы [ 3 ]

1 голос
/ 27 января 2012

Вам необходимо установить делегат ваших объектов GestureRecognizer, и в делегате реализовать этот метод:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer;

И вернуть его ДА.

0 голосов
/ 20 мая 2011

Эй, Адам, я не знаю, переписал ли ты еще что-нибудь, но у меня есть несколько вариантов для тебя здесь , здесь , здесь , худший случай задайте кому-нибудь тот же вопрос здесь . Надеюсь, это поможет.

0 голосов
/ 20 мая 2011

Вы пробовали что-нибудь из Apple ZoomingPDFViewer или PhotoScroller ?В Photo Scroller изображения выложены плиткой и плиткой, и вы увеличиваете масштаб. Надеюсь, что-то можно из этого извлечь.Если у вас возникли проблемы с распаковкой файла, попробуйте загрузить его из Xcode.

Я думаю, я также нашел несколько других людей, делающих что-то близкое:

https://stackoverflow.com/questions/5383757/scaling-panning-a-uiimageview-using-pinch-and-swipe-gestures-free-code

http://answers.unity3d.com/questions/22500/how-to-zoom-and-pan-when-you-pinchswipe-across-scr.html

http://technology.blurst.com/iphone-multi-touch/

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...