Я использую Cocos2d для рендеринга спрайта и UIGestureRecognizers, чтобы позволить пользователю панорамировать, вращать и масштабировать спрайт.
I ' Каждый из них работает изолированно, используя следующий код:
UIPinchGestureRecognizer *pinchRecognizer = [[[UIPinchGestureRecognizer alloc] initWithTarget:layer action:@selector(handlePinchFrom:)] autorelease];
[viewController.view addGestureRecognizer:pinchRecognizer];
UIRotationGestureRecognizer *rotationRecognizer = [[[UIRotationGestureRecognizer alloc] initWithTarget:layer action:@selector(handleRotationFrom:)] autorelease];
[viewController.view addGestureRecognizer:rotationRecognizer];
Однако я хочу как масштабировать, так и вращать спрайт, если пользователь сжимает пальцы вместе во время вращения (например, приложение «Фотографии»). К сожалению, распознаватель, кажется, застревает в режиме "поворота" или "защемления" и не может вызывать оба обработчика одновременно: (
Итак, в основном, я хочу знать - означает ли это, что я могу Не используете UIGestureRecognizer? Могу ли я объединить два распознавателя и выполнять все действия в одном обработчике? Придется ли мне подклассифицировать UIGestureRecognizer, чтобы он был чем-то вроде PinchAndRotateRecognizer.
Помощь приветствуется:)