我正在使用下面的代码来缩放图像,但是我的imageView越来越缩放到4比例因子以上,然后尝试将imageView拖动到缩小到4比例因子。

如何阻止它缩放到4 scaleFactor之上,或者如何在拖动时阻止它缩放?

class ZoomViewController: UIViewController,UIScrollViewDelegate {

@IBOutlet weak var scrollView:UIScrollView!
@IBOutlet weak var imageView:UIImageView!

override func viewDidLoad() {

        super.viewDidLoad()
        scrollView.delegate = self

        scrollView.minimumZoomScale = 1.0
        scrollView.maximumZoomScale = 4.0
}

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

最佳答案

您可以通过实现UIScrollViewDelegate's scrollViewDidZoom(_:)方法来实现该功能,即

func scrollViewDidZoom(_ scrollView: UIScrollView) {
    if scrollView.zoomScale > scrollView.maximumZoomScale {
        scrollView.zoomScale = scrollView.maximumZoomScale
    } else if scrollView.zoomScale < scrollView.minimumZoomScale {
        scrollView.zoomScale = scrollView.minimumZoomScale
    }
}


在上面的代码中,检查scrollView's zoomScale是否位于maximumZoomScaleminimumZoomScale内。如果不是,请按照允许的限制进行更新。

关于ios - UIImageView捏快速缩放,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56867583/

10-14 20:38