用Swift动画缩放UIScrollView上的zoomScale

问题描述:

iOS应用程序相对比较新,而且很快,所以我在如何继续下去方面有些遗憾。基本上,我有一个UIImageView,我可以捏缩放/滚动,因为我的UIImageView是在一个UIScrollView,但我想在UIImage上添加一个双击以放大。用Swift动画缩放UIScrollView上的zoomScale

我可以放大(现在只需将zoomScale设置为3.0),但我想要平滑过渡。我确实看到了zoom(to :, animated :)方法,但我不太确定如何放大视图的中心。

无论如何,这是我到目前为止。

我创建了tapGestureRecognizer,并将其分配给UIImageView的

let tapGesture = UITapGestureRecognizer(target: self, action: #selector(tapImageViewGesture))   
    self.Image1.isUserInteractionEnabled = true 
    self.Image1.addGestureRecognizer(tapGesture) 

以下是执行变焦

func tapImageViewGesture(sender: UITapGestureRecognizer) { 
    print("Touched") 
    self.pinchZoomScroll1.zoomScale = 3.0 

} 

的功能有没有一种简单的方法可以让我有某种的放大?的平滑动画,还是应该使用缩放功能,因为它已经支持动画了?

谢谢!

+0

你试过'self.pinchZoomScroll1 .setZoomScale(3.0,animated:true)'? – OOPer

+0

这是有效的,我一定忽略了这个功能。谢谢! (如果你把答案写在下面,我会接受它的。 – Rickybobby

+0

请自己写一个答案。我通常只会在我的环境中确认后发表一个答案。 – OOPer

要么你可以设置一组动画真正使用此:

self.pinchZoomScroll1.setZoomScale(3.0, animated: true) 

,或者您也可以通过设置scrollViewminimumScale,最大规模使用滚动视图代表FUNC:

pinchZoomScroll1.minimumZoomScale = 1.0 
pinchZoomScroll1.maximumZoomScale = 6.0 

func viewForZooming(in scrollView: UIScrollView) -> UIView? { 

return Image1 
}