我正在使用 Xcode 6.4 并快速编写。
现在我正在尝试以纵横比显示一个简单的图像,然后能够放大。不幸的是,图像加载完全缩放。其他一切都很好,双击甚至可以看到图像方面的匹配。我怎样才能更改我的代码,以便图像加载的方面适合?
我的情况非常类似于
UIImage Is Not Fitting In UIScrollView At Start
但是,objective-c 答案不再有效。
这是我的 viewDidLoad 代码
override func viewDidLoad() {
super.viewDidLoad()
imageView = UIImageView(image: UIImage(named: "image.png"))
scrollView = UIScrollView(frame: view.bounds)
scrollView.backgroundColor = UIColor.blackColor()
scrollView.contentSize = imageView.bounds.size
scrollView.autoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight
scrollView.contentOffset = CGPoint(x: 1000, y: 450)
scrollView.addSubview(imageView)
view.addSubview(scrollView)
scrollView.delegate = self
setZoomScale()
setupGestureRecognizer()
}
这是我的 setZoomScale() 代码
func setZoomScale() {
let imageViewSize = imageView.bounds.size
let scrollViewSize = scrollView.bounds.size
let widthScale = scrollViewSize.width / imageViewSize.width
let heightScale = scrollViewSize.height / imageViewSize.height
scrollView.minimumZoomScale = min(widthScale, heightScale)
scrollView.zoomScale = 1.0
}
这一切都源于在线教程,
http://www.appcoda.com/uiscrollview-introduction/
先感谢您!
最佳答案
解决方案,在我的 setZoomScale 函数中,我将 scrollView 的缩放比例设置为“1.0”而不是最小值
这是更正的代码,希望这对某人有所帮助!
func setZoomScale() {
let imageViewSize = imageView.bounds.size
let scrollViewSize = scrollView.bounds.size
let widthScale = scrollViewSize.width / imageViewSize.width
let heightScale = scrollViewSize.height / imageViewSize.height
let minZoomScale = min(widthScale, heightScale)
scrollView.minimumZoomScale = minZoomScale
scrollView.zoomScale = minZoomScale
}
关于ios - UIScrollView 中的 UIImage 加载缩放,而不是宽高比,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31976220/