美文网首页iOS开发攻城狮的集散地iOS开发-WebView
高度自适应内容的webView作表头(tableHeaderVi

高度自适应内容的webView作表头(tableHeaderVi

作者: 无夜之星辰 | 来源:发表于2018-09-27 18:46 被阅读76次

如图:

红色框部分是表头,展示后台返回的html字符串,我用的是WKWebView。

要实现webView的高度自适应内容,可以通过观察webView.scrollViewcontentSize的变化动态调整webView的高度。

[self.webView.scrollView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:nil];

KVO:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context {
    self.webView.height = self.webView.scrollView.contentSize.height;
    self.tableView.tableHeaderView = self.webView;
}

注意点:

  1. 每次webView的高度改变都要调用self.tableView.tableHeaderView = self.webView
  2. 不需要reloadData,因为表头是static view,不受reloadData影响。

相关文章

网友评论

    本文标题:高度自适应内容的webView作表头(tableHeaderVi

    本文链接:https://www.haomeiwen.com/subject/ytcyoftx.html