实现图像手势:UIImageView模式与捏合手势冲突

时间:2013-04-11 12:50:20

标签: cocoa-touch uiscrollview uiimageview gestures

Pan对我来说很好,但是用这样的识别器代码捏不会:

- (void)pinchDetected:(UIPinchGestureRecognizer *)pinchRecognizer
{
    CGFloat scale = pinchRecognizer.scale;
    self.imageView.transform = CGAffineTransformScale(self.imageView.transform, scale, scale);
    pinchRecognizer.scale = 1.0;
}

图像视图会根据其“模式”不断重置图像,无论是中心,纵横比等等。

1 个答案:

答案 0 :(得分:1)

我解决了我的问题:我正在制作我的第一个图像查看器,并且为了学习如何捏合和缩放,我天真地搜索了如何支持手势,而这些手势并不是通过简单地将图像视图添加到视图控制器来实现的。

不幸的是,这里有很多“教程”,展示了如何使用手势识别器等进行编程。我花了几个小时不必要地走这条路线。我继续往前走,因为我感觉非常接近让事情发挥作用:平底锅的姿势完美无瑕,而且“只是”变焦被打破了。

(旁边的问题:当前iOS 6“最佳实践”是否有一些很棒的资源?)

事实证明,这是错误的路径,并且对于基本手势识别而言不必要地复杂。 All that's needed is to place the image view in a scroll view。 99%的编程都得到了解决。 (我确信已经就是这种情况 - 我无法相信cocoa touch不会提供这样的核心功能。)