ios - Swift - 双指缩放多张图片

标签 ios uiscrollview swift2 pinchzoom uipinchgesturerecognizer

我有一个 ScrollView ,它包含一个 ImageView ,它本身可以很好地收缩和缩放。我的问题是当我以编程方式向 ScrollView 添加额外的 ImageView 时,它们会进行缩放而不是主 ScrollView 。事实上,scrollView 随后被“锁定”以进行平移和缩放。

我想做的是“同步”我放置在 ScrollView 上的所有图像以响应捏合和缩放,以便无论我最终使用什么 zoomScale,所有内容都以正确的“比例”大小显示。

这就是我在屏幕上放置新图像的方式:

let singleTapRecognizer = UITapGestureRecognizer(target: self, action: "scrollViewSingleTapped:")
    singleTapRecognizer.numberOfTapsRequired = 1
    singleTapRecognizer.numberOfTouchesRequired = 1
    scrollView.addGestureRecognizer(singleTapRecognizer)

这是添加图像的例程:

imageView = UIImageView(image: UIImage(named: "Fingerprint36x36.png"))
    imageView.tag = 1999
    imageView.center = CGPoint(x: pointInView.x, y: pointInView.y);

    scrollView.addSubview(imageView)

一旦发生这种情况,似乎“self”将成为新的 View 控件,而不是 scrollView。

所以我“认为”我的问题是:如何让 gestureRecognizer 专注于 ScrollView 而不是“最上面”的 imageView?

我没有为 UIPinchGestureRecognizer 设置任何代码。它只是默认工作,因为我使用的是 ScrollView。

感谢您的帮助。 :) 标记

最佳答案

好的,我想通了,想分享...

在委托(delegate)中,我为放置在背景上的图像重复使用了相同的变量。更改图像名称,问题自行消失...

func viewForZoomingInScrollView(scrollView: UIScrollView!) -> UIView! {
  return imageView
}

imageView 最初是我的背景名称,后来又用作我的 xy 指针图像的名称。我在错误的地方找了很久,但终于找到了另一个类似的线程,促使我查看这个函数。

关于ios - Swift - 双指缩放多张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34623712/

相关文章:

swift - 如何检查 UITextField 在 Swift 2.0 中不为空?有没有更好的方法来计算字符串?

ios - 使用swift在ios上分享 Assets 库视频

ios - 核心数据多个 ManagedObjectContext

ios - 如何在 Storyboard Controller 中重用定义为原型(prototype)单元格的自定义 UITableViewCell

ios - 更改 SKPhysicsBody 参数无效

iphone - UIScrollView 的 setContentOffset 在新 subview 加载之前调用

ios - 具有自动布局混合方法的 UIScrollView?

objective-c - UIScrollView ScrollRectToVisible - 不使用动画 = 是

ios - '[AnyObject] ?' is not convertible to ' NSArray'(xcode,swift)

IOS UIPickerView - 动态添加到静态表