iOS 計算UIWebView的內容大小

使用UIWebView加載一篇文章,往往要在文章的底部添加一些其他控件,計算準webView的內容大小就顯得很重要了,之前也找過很多方法,最后找到一種計算比較準確的貼出來
在webview的代理方法里面:

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    CGFloat currentY=0.0f;
    // 關鍵代碼
    currentY = currentY + _webView.scrollView.contentSize.height + 15;
    //內容 Content
    CGFloat contentLeftSpace = SIZETONORMAL(54);
    CGFloat contentWidth = SCREEN_WIDTH - contentLeftSpace * 2;

    _webView.frame=CGRectMake(contentLeftSpace,100,contentWidth,currentY);
    NSLog(@"contentSize.height=======%f",webView.scrollView.contentSize.height);
}

計算WKWebview內容的高度

// 頁面加載完成之后調用 此方法會調用多次
- (void)webView:(WKWebView *)webView didFinishNavigation:(null_unspecified WKNavigation *)navigation {
    
    [CXMProgressView dismissLoading];
    // 注意這后面的分號不能丟
    [webView evaluateJavaScript:@"document.body.offsetHeight;" completionHandler:^(id _Nullable any, NSError * _Nullable error) {
        
        NSString *heightStr = [NSString stringWithFormat:@"%@",any];
        NSLog(@"heightStr===%@",heightStr);
        
        CGFloat height = [heightStr floatValue];
        
        // CGSize fittingSize = [_webView sizeThatFits:CGSizeZero];
        NSLog(@"height===%lf",height);
          
    }];
    NSLog(@"結束加載");
   
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,349評論 25 708
  • iOS開發系列--網絡開發 概覽 大部分應用程序都或多或少會牽扯到網絡開發,例如說新浪微博、微信等,這些應用本身可...
    lichengjin閱讀 3,721評論 2 7
  • ----漫談柳宗元寫景散文 作為唐宋八大家之一的柳宗元,無疑在散文上有著杰出成...
    堃鴃閱讀 537評論 0 0
  • 松花江流經吉林 ,黑龍江兩省 。向東南流去 ,汪汪洋洋五十五萬平方公里 ,流著流著 某個小小支流便進入我原本的家...
    林景熙閱讀 567評論 3 1
  • 茶市資訊—— 從云南省質監局獲悉,“2016年中國品牌價值評價信息發布會”發布,云南省普洱、臨滄、西雙版納三地“普...
    王彥棟01閱讀 273評論 0 0