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{//在此处执行代码}