Ios 如何使用自动布局基于webview内容管理UITableHeaderView的高度
当我使用自动布局在Ios 如何使用自动布局基于webview内容管理UITableHeaderView的高度,ios,swift,uitableview,webview,Ios,Swift,Uitableview,Webview,当我使用自动布局在headerview上添加UIWebView时。我无法根据UIWebView的内容管理headerview的高度,我建议采取以下步骤: 首先,将webViewHeight声明为类变量,以便所有函数都可以访问它 var webViewHeight: CGFloat = 0.0 然后,获取UIWebView内容高度的高度。确保已在viewForHeaderInSection func webViewDidFinishLoad(webView: UIWebView) { /
headerview
上添加UIWebView
时。我无法根据UIWebView
的内容管理headerview
的高度,我建议采取以下步骤:
首先,将webViewHeight
声明为类变量,以便所有函数都可以访问它
var webViewHeight: CGFloat = 0.0
然后,获取UIWebView内容高度的高度。确保已在viewForHeaderInSection
func webViewDidFinishLoad(webView: UIWebView) {
// check if webview finished loading
if !webView.isLoading {
if webViewHeight == 0 {
// get webview height
webViewHeight = webView.scrollView.contentSize.height
}
// then reload tableView
myTableView.reloadData()
}
}
它应该在中更新
func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return webViewHeight
}
“webView.scrollView.contentSize.height”它总是返回恒定的高度。@RajniJoharRaswant它应该返回双精度值。你得到了什么?试着在
webViewDidFinishLoad
@RajniJoharRaswant内使用print(webView.scrollView.contentSize.height)很好,别忘了标记这个答案。谢谢,我认为这不是一个更好的方法,因为当我这样做的时候,它是一个新的tableview。我不知道我是对还是错,请纠正我。@BhavsangJam好极了。所以我认为需要添加条件来检查webview是否完成加载if!webView.isLoading{//在此处执行代码}