iOS开发攻城狮的集散地iOS开发-WebView

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

2018-09-27  本文已影响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影响。
上一篇 下一篇

猜你喜欢

热点阅读