我在滚动视图中缩放图像时遇到问题。 当只有一个图像时,它工作正常,但是当有更多图像时,下面的图像位于第一个图像的顶部。 他们保持位置,但首先是更大。
我是否必须更新以下图像的偏移量,还是有其他方法? 当我缩放
时@IBOutlet weak var mainScrollView: UIScrollView!
var imageView: UIImageView!
override func viewDidLoad() {
...
self.mainScrollView.delegate = self
self.mainScrollView.minimumZoomScale = 1.0
self.mainScrollView.maximumZoomScale = 3.0
self.mainScrollView.isPagingEnabled = true
self.mainScrollView.isScrollEnabled = true
self.loadImages()
...
}
@objc fund loadData() {
...
scrollViewWidth = self.mainScrollView.frame.width
scrollViewHeight = self.mainScrollView.frame.height
for dImage in self.imgData! {
let imageView = UIImageView(frame: CGRect(x:offset, y:0,width:self.scrollViewWidth, height:self.scrollViewHeight))
imageView.image = UIImage(data: dImage)
imageView.contentMode = .scaleAspectFit
self.imgViewArray.append(imageView)
self.mainScrollView.addSubview(imageView)
offset += self.scrollViewWidth
self.mainScrollView.contentSize = CGSize(width: offset, height: self.scrollViewHeight)
}
}
}
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
let page = scrollView.contentOffset.x /
scrollView.frame.size.width;
self.imageView = imgViewArray[Int(page)]
return self.imageView
}
我在这里放大了另一张图片。也是错误的立场。
如果有人能指出我正确的方向,那会很好。 谢谢!
答案 0 :(得分:-1)
添加自动布局约束以在滚动视图的内容视图中定位图像视图(间隔一个在另一个之下)。