ios - iOS 中的可缩放图像
问题描述
我正在做 Apple 的官方 iOS 开发教程。有一项任务是在滚动视图中制作可缩放的图像。我相信这样做是对的。有错误,因为我无法放大图像。任务在屏幕截图下方。
这是我的代码:
import UIKit
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
//set the scroll view's deligate to be the viewcontroller instance
self.scrollView.delegate = self
viewForZooming(in: scrollView)
}
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return imageView
}
override func viewDidAppear(_ animated: Bool) {
updateZoomFor(size: view.bounds.size)
}
func updateZoomFor(size: CGSize) {
let widthScale = size.width / imageView.bounds.width
let heightScale = size.height / imageView.bounds.height
let scale = min(widthScale, heightScale)
scrollView.minimumZoomScale = scale
scrollView.zoomScale = scale
}
}
解决方案
推荐阅读
- python - 如何使用 Matplotlib、pandas 和 sklearn 创建线性回归图?
- c# - Automapper:如果所有子属性都为空,则将父对象设置为空
- javascript - 在 React 中设置 img.src 会导致应用程序范围的减速
- python - 如何使在循环中创建的 Python Tkinter 小部件独立?
- swift - swiftUI 中的视图和 NavigationLink() 究竟是如何工作的?
- docker - Dockerizing gRPC 服务器(节点)问题:[错误:无法加载 gRPC 二进制模块,因为它不是为当前系统安装的]
- python - 在 panda3d 和 blender 中创建爆炸
- android - 如何在 Android Studio 中有 2 个具有相同包名的不同项目?
- react-native - 无效的挂钩调用。钩子只能在函数体内调用。尝试使用 useContext
- c++ - 用于计算数学方程式的“math.h”定义