Ode*_*gev 11 uitableview uiscrollview ios wkwebview
我必须在UITableView中集成WKWebView(请不要质疑).
我确保WKWebView滚动被禁用,这样我就避免在可滚动视图(UITableView)中有可滚动视图.
但是,当WKWebview中的HTML内容很大时,让我们说两次屏幕,我发现屏幕下方的内容没有显示给用户,即当用户滚动表格视图时,只有白色\空屏幕,其中WKWebView是......
我根据以下内容更新了WebViewTableViewCell的高度:
public func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
let height = webView.scrollView.contentSize.height
...
...
delegate.updateWebViewCellHeight(height: self.cellHeight)
}
Run Code Online (Sandbox Code Playgroud)
我想这可能是WKWebView上的一些优化的结果,它允许它仅在屏幕上显示时才呈现DOM.
我的问题是,为了确保在滚动表格视图时向用户显示WKWebView中的所有内容,我该怎么办?
PS UIWebView渲染所有内容都很好,它似乎只在WKWebView中发生
见下图:
小智 10
你可以在WKWebView上调用setNeedsLayout,(Swift):
请注意,这是UITableView的scrollView.
func scrollViewDidScroll(_ scrollView: UIScrollView) {
// use IndexPath for row/section with your WKWebView
if let cell = tableView.cellForRow(at: IndexPath(row: 1, section: 0)) as? WKWebViewCell { // Here we take our cell
cell.wkWebView?.setNeedsLayout()
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2852 次 |
| 最近记录: |