WKWebView嵌套在Cell中,ios10以下没问题 ,但是在IOS10及以上会出现只加载出一部分内容的情况,找了好久的原因 终于看到了网上一个道友说的原因
这个是WK在rendering的时候出现了问题,需要滑动的时候重新刷新webview进行处理。直接贴代码:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
if (!tempOffset || ABS(scrollView.contentOffset.y - tempOffset) > SCREEN_HEIGHT/2)
{
[self.h5Cell.webView setNeedsLayout];
tempOffset = scrollView.contentOffset.y;
}
}
上面的方法通过滚动距离来控制render,但是对于滚动区间条件之外的会同样出现显示问题,解决方案,对scrollview的drag事件进行捕获:
- (void)scrollViewDidEndDragging:(UIScrollView*)scrollView willDecelerate:(BOOL)decelerate;
{
if([UIDevicecurrentDevice].systemVersion.floatValue>=10) {
[self.h5Cell.webViewsetNeedsLayout];
}
}