首页 > 解决方案 > 用UIScrollView缩放时,无法正常滚动到下端

问题描述

为了正确理解,我准备了一个电影。

在这部电影中,我想滚动到红线。

但是,似乎 contentSize 是不够的。

如何才能滚动到红线?


-代码-

import UIKit

class PlotterCanvasView: UIView, UIScrollViewDelegate {

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

    class func instance() -> PlotterCanvasView {
        return UINib(nibName: "PlotterCanvasView", bundle: nil).instantiate(withOwner: self, options: nil)[0] as! PlotterCanvasView
    }

    func initValue(){
        scrollView.delegate = self
        scrollView.maximumZoomScale = 6.0
        scrollView.minimumZoomScale = 1.0

        imageView.image = UIImage(named: "col")
    }

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

}


-电影-

Youtube 中

的电影(关于电影。我写了上面的代码,并在 UIScrollView 中缩放 UIImageView。但是 contentSize 不够,我无法向下滚动到底部。)


-xcode中的图像-

在此处输入图像描述

标签: iosswiftxcodeuiscrollviewswift4

解决方案


我解决了我自己。

如下图所示的约束是可能的。

(UIScrollView 约束是“Margin all 0s”)
(UIImageView 约束是 UIScrollView 的“Equal Height”)

在此处输入图像描述


推荐阅读