iOS - WKWebView 添加头部视图HeadVIew~
2018-06-09 本文已影响718人
杨可爱灬
没有妹纸你们是不会进来的!
不多BB直接上代码~~
CGFloat height = _headView.height;
_webView.scrollView.contentInset= UIEdgeInsetsMake(height,0,0,0);
[_webView.scrollView addSubview:_headView];
NSString *url = [NSString stringWithFormat:BaseUrl, _myModel.detailUrl];
[_webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:url]]];
_webView.alpha = 0;
-
原理主要是给WKWebview的scrollView设置了偏移。然后在scrollView上添加了头部视图。
-
PS:但是网页加载的时候,scrollViewDidScroll会走俩遍,第一次的scrollView.contentOffset是不准确的。这样导致视觉效果很差。webView会自己跳一下~
- 解决方案:先给webView的alpha设置了0的透明度,然后在网页加载结束的时候将alpha设置回1~代码如下:↓
// 页面加载完成之后调用
- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
// }];
[UIView animateWithDuration:0.3 animations:^{
webView.alpha = 1;
}];
}