在 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)
}
}
当 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)
}
}