放大滚动视图
Zoom in a Scroll View
我有点困惑。我按照 Apple 的建议放大滚动视图,但没有任何反应。
代码:
import UIKit
import SpriteKit
class ScrollViewController: UIViewController, UIScrollViewDelegate {
var scrollView: UIScrollView!
var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
imageView = UIImageView(image: UIImage(named: "image.png"))
scrollView = UIScrollView(frame: view.bounds)
scrollView.contentSize = imageView.bounds.size
scrollView.addSubview(imageView)
self.scrollView.delegate = self
self.scrollView.minimumZoomScale = 0.5
self.scrollView.maximumZoomScale = 3
view.addSubview(scrollView)
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return imageView
}
}
我可能漏掉了什么。但是,垂直或水平滚动的功能效果很好。但是当我按下 "option" 并移动 2 个灰色点时,没有发生缩放。
您为委托方法输入了错误的名称。您似乎从 Swift 的先前版本复制了该代码。在 Swift 3 中应该是:
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return imageView
}
小心这样的错误,它会浪费很多时间。我建议您再次键入每个委托方法 "viewforzoom...",自动完成将显示正确的方法。
我有点困惑。我按照 Apple 的建议放大滚动视图,但没有任何反应。
代码:
import UIKit
import SpriteKit
class ScrollViewController: UIViewController, UIScrollViewDelegate {
var scrollView: UIScrollView!
var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
imageView = UIImageView(image: UIImage(named: "image.png"))
scrollView = UIScrollView(frame: view.bounds)
scrollView.contentSize = imageView.bounds.size
scrollView.addSubview(imageView)
self.scrollView.delegate = self
self.scrollView.minimumZoomScale = 0.5
self.scrollView.maximumZoomScale = 3
view.addSubview(scrollView)
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return imageView
}
}
我可能漏掉了什么。但是,垂直或水平滚动的功能效果很好。但是当我按下 "option" 并移动 2 个灰色点时,没有发生缩放。
您为委托方法输入了错误的名称。您似乎从 Swift 的先前版本复制了该代码。在 Swift 3 中应该是:
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return imageView
}
小心这样的错误,它会浪费很多时间。我建议您再次键入每个委托方法 "viewforzoom...",自动完成将显示正确的方法。