在 iPhone 上监听 WKWebView 何时缩小

Listening for when WKWebView is zoomed out on iPhone

WKWebView 在 iPhone 上缩小时,我如何监听? (例如,当用户捏合网页并使其小于 100% 缩放时)

WKWebView.magnification 仅适用于 macOS,不适用于 iOS。参见:

https://developer.apple.com/documentation/webkit/wkwebview/1414985-magnification

我更喜欢 Swift 4 或 4.2 中的解决方案,因为它们是最新的,我不知道更早的 Swift 或 Objective-C。

A WkWebView 包含一个 scrollView,其中包含进一步的子视图以显示网页的内容。要监听缩放事件,请使您的视图控制器符合 UIScrollViewDelegate:

class ViewController: UIViewController, UIScrollViewDelegate {
    @IBOutlet weak var webView: WKWebView!

    override func viewDidLoad() {
        super.viewDidLoad()

        webView.scrollView.delegate = self
        webView.load(URLRequest(url: URL(string: "https://www.apple.com")!))
    }

    func scrollViewDidZoom(_ scrollView: UIScrollView) {
        print(scrollView.zoomScale)
    }
}