iOS11 WKWebview获取高度不准确问题 终极解决方案

话不多说直接上干货

1. 

if (@available(iOS 11.0, *)) {

        _webView.scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;

        _webView.scrollView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);

        _webView.scrollView.scrollIndicatorInsets = _webView.scrollView.contentInset;

    }

————————————————

原文链接:https://blog.csdn.net/zhaotao0617/java/article/details/78274806


2. 

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


- (void)observeValueForKeyPath:(NSString*)keyPathofObject:(id)objectchange:(NSDictionaryid> *)changecontext:(void*)context

{

    if([keyPathisEqualToString:@"contentSize"]) {

                UIScrollView*scrollView = (UIScrollView*)object;

                CGFloat webContentHeight = scrollView.contentSize.height;

                //webContentHeight 就是高度 拿去刷新就好

    }

}

// 别忘注销kvo

- (void)dealloc

{

    [_webView.scrollView removeObserver:self forKeyPath:@"contentSize"];

}


亲测这样之后,解决了高度不正确的问题。以及其他因为高度带来的问题

你可能感兴趣的:(iOS11 WKWebview获取高度不准确问题 终极解决方案)