每当我滚动集合视图时,我都会在UICollectionViewCell内拥有UIWebView,而我的webview会重新加载。这要花很多时间。
如果该单元格的Webview已经加载,我保留了一些布尔值以停止重新加载Webview。但这会导致单元格不匹配的问题(单元格中显示了最后加载的或其他单元格Webview数据)
我正在使用html字符串加载webview。
cell.webView.loadHTMLString(updatedString, baseURL: nil)
答案 0 :(得分:0)
您可以检查html内容在Web视图中是否可用。如果html字符串为空,则在cellForRow
方法中,调用loadHTMLString
方法。
if let htmlString = self.webView1.stringByEvaluatingJavaScript(from: "document.body.innerHTML") {
if htmlString.isEmpty {
self.webView1.loadHTMLString("<p>asda</p><b>asdg</b>", baseURL: nil)
} else {
print("html already loaded")
}
}
let webView = WKWebView()
self.webView.evaluateJavaScript("document.body.innerHTML", completionHandler: { (string, error) in
if let htmlString = string as? String{
if htmlString.isEmpty {
self.webView.loadHTMLString("<p>asda</p><b>asdg</b>", baseURL: nil)
} else {
print("html already loaded")
}
}
})