ScrollView不会在swift中滚动

maf*_*oso 3 uiscrollview uiimageview ios swift

我有一个UIView并添加一个UIScrollView.scrollView内部是一个UIImageView.
我想通过按下按钮来缩放图像视图.如果图像视图被缩放,您应该能够滚动,但这不起作用.

目前我有:

self.imageView = UIImageView()
self.imageView.image = image
self.imageView.frame = self.contentView.bounds

self.scrollView = UIScrollView()
self.scrollView.frame = self.contentView.bounds
self.scrollView.contentSize = self.contentView.bounds.size
self.scrollView.addSubview(self.imageView)

self.contentView.addSubview(self.scrollView)
Run Code Online (Sandbox Code Playgroud)

然后:

@IBAction func zoomPicture() {
    if (scale <= 1.5) {
        scale = scale + 0.1
        scrollView.transform = CGAffineTransformMakeScale(scale, scale)
        scrollView.zoomScale = scale
        scrollView.maximumZoomScale = 1.5
        scrollView.minimumZoomScale = 1.0
        scrollView.contentSize = contentView.bounds.size
        scrollView.scrollEnabled = true
    }
}
Run Code Online (Sandbox Code Playgroud)

我的类也实现了UIScrollViewDelegate,我在viewDidLoad()函数中设置了委托.我还添加了这个viewForZoomingInScrollView功能.缩放工作,但我无法滚动.

Ash*_*kar 6

对于这个问题,你必须设置self.scrollView.contentSize大于self.contentView.bounds它,以便获得适当的滚动空间.

替换这一行

self.scrollView.contentSize = self.contentView.bounds.size
Run Code Online (Sandbox Code Playgroud)

对此:

self.scrollView.contentSize = self.contentView.bounds.size*2 //or what ever size you want to set
Run Code Online (Sandbox Code Playgroud)