我有一个 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/