ios - 用两根手指旋转和缩放?

标签 ios image rotation zooming

我几乎正在尝试找到一种可以在应用程序中同时缩放和旋转图像的方法。

我发现这段代码指示我将其放入 TouchMoved 方法中:

UITouch *touch1 = [[allTouches allObjects] objectAtIndex:0];
UITouch *touch2 = [[allTouches allObjects] objectAtIndex:1];
CGPoint previousPoint1 = [touch1 previousLocationInView:nil];
CGPoint previousPoint2 = [touch2 previousLocationInView:nil];
CGFloat previousAngle = atan2 (previousPoint2.y - previousPoint1.y, previousPoint2.x - previousPoint1.x);

CGPoint currentPoint1 = [touch1 locationInView:nil];
CGPoint currentPoint2 = [touch2 locationInView:nil];
CGFloat currentAngle = atan2 (currentPoint2.y - currentPoint1.y, currentPoint2.x - currentPoint1.x);

transform = CGAffineTransformRotate(transform, currentAngle - previousAngle);
self.view.transform = transform;

现在这仅适用于用两根手指旋转,但我也需要能够使用两根手指同时缩放。我已经尝试了一切,但我只是不确定出了什么问题或如何从这里开始。

无论如何, map 应用程序会执行类似的操作,您可以放大 map 并同时旋转它,这就是我试图在应用程序中的图像上实现的目标。

无论如何,从现在开始我该怎么办?

谢谢!

最佳答案

添加UIPinchGestureRecognizerUIRotationGestureRecognizer根据您的观点,设置其委托(delegate)并实现以下委托(delegate)函数。

-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
   return YES;
}

应该可以了。

关于ios - 用两根手指旋转和缩放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17183504/

相关文章:

ios - 无法在 swift 3.0 中使用 smtp 服务器发送邮件

ruby-on-rails - 在 Rails 3.1 on Production (Heroku) 中显示为空白的图像

javascript - 如何检查元素是否包含图像?

C++ : Why isn't my (permuted index) code printing out correctly?

css - 为什么这个 CSS3 旋转动画设置在 Chrome 和 Safari 上不起作用?

java - 在 OpenGL 中获取相机在 X、Y 和 Z 轴上的弧度旋转?

ios - Google Cloud 功能中仅接收部分 Apple 订阅通知

IOS:屏蔽图像以考虑视网膜比例因子

iphone - NSDate 独立于时区?

html - media query中如何只占图片的全部空间和居中焦点