首页 > 解决方案 > WKWebView 的 didFinish 委托方法接收回调的时间过长

问题描述

我的 UITableViewCell 中有一个 WKWebView。我使用 HTML 字符串配置我的 webview,如下所示:

webView.loadHTMLString(myHTMLString, baseURL: URL(string: "http://www.myPage.com"))

一旦 webview 完成加载,我希望在以下委托方法中接收回调,以便计算 webview 的内容大小。

 func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
            webView.evaluateJavaScript("document.readyState", completionHandler: { [weak self] (_, _) in
                guard let self = self else { return }
                webView.invalidateIntrinsicContentSize()
                self.delegate?.loadFinished()
            })
    }

在上述委托中接收回调需要很长时间。

请提出一种优化加载时间的方法。

标签: htmliosswiftwkwebviewwknavigationdelegate

解决方案


推荐阅读