我有WKWebView
我要禁用缩放。为此,我实施了UIScrollViewDelegate viewForZooming(_:)
委托功能,其中我return nil
如下:
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return nil
}
当我捏时,WKWebView
仍会缩放,但我不想要这种效果。
我已将WKWebView isMultipleTouchEnabled
设置为false
,但这仍然无法禁用缩放。
禁用缩放的唯一一项是将isUserInteractionEnabled
设置为false
,但是我无法与WKWebView
内的链接进行交互,这不是理想的事情。
这就是我声明我的对象以及它是如何设置的方式
private lazy var webView: WKWebView = {
// script to fit the content with the screen
var scriptContent = "var meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width'); document.getElementsByTagName('head')[0].appendChild(meta);"
let wkuscript = WKUserScript(source: scriptContent, injectionTime: WKUserScriptInjectionTime.atDocumentEnd, forMainFrameOnly: true)
let wkucontroller = WKUserContentController()
wkucontroller.addUserScript(wkuscript)
let wkwebconfig = WKWebViewConfiguration()
wkwebconfig.userContentController = wkucontroller
wkwebconfig.preferences.setValue(true, forKey: "developerExtrasEnabled")
let wv = WKWebView(frame: .zero, configuration: wkwebconfig)
wv.frame.size.height = 1
wv.isOpaque = false
wv.backgroundColor = .clear
wv.scrollView.backgroundColor = Theme.collectionViewBackgroundColor
return wv
}()
fileprivate func setupWKWebView() {
addSubview(webView)
webView.anchor(top: topAnchor, left: leftAnchor, bottom: bottomAnchor, right: rightAnchor, paddingTop: 0, paddinfLeft: 0, paddingBottom: 0, paddingRight: 0, width: 0, height: 0)
webView.scrollView.delegate = self
webView.navigationDelegate = self
}
任何可能导致此问题的提示?
答案 0 :(得分:8)
请尝试此操作以禁用缩放以进行捏合手势。
UITextView