iOS 获取 webView 加载完成后的高度

iOS webView 加载HTML5获取加载后的高度

奇葩的事儿很多,比如这样 下边的图文详情 数据来源有些复杂是一些HTML字符串 ,我们需要用webview加载这些字符串 获取最终webView的高度。因为此视图需要加载到tableView的cell上 ,所以需要在获取到webView的高度后 重新刷新tableView 。

iOS 获取 webView 加载完成后的高度_第1张图片

废话说完了 以下是找到对于我这个项目最有效的方法:

  • (void)webViewDidFinishLoad:(UIWebView *)webView
    {
    //HTML5的高度
    NSString *htmlHeight = [webView stringByEvaluatingJavaScriptFromString:@”document.body.scrollHeight”];
    //HTML5的宽度
    NSString *htmlWidth = [webView stringByEvaluatingJavaScriptFromString:@”document.body.scrollWidth”];
    //宽高比
    float i = [htmlWidth floatValue]/[htmlHeight floatValue];

    //webview控件的最终高度
    float height = screenWidth/i;

    //后面的代码
    //重新设置webView的高度,刷新tableView 设置cell的高度
    _tuwenWeb.frame = CGRectMake(0, 0, self.view.frame.size.width, height);
    [self.tableView reloadData];
    。。。。。。

}
//设置cell的高度
- (CGFloat)tableView:(UITableView )tableView heightForRowAtIndexPath:(NSIndexPath )indexPath
{
return _tuwenWeb.scrollView.contentSize.height;
}
以上是根据搜到的方法 ,针对我的项目做得调整,希望可以帮到有同样需求的码农。

转载博客链接http://blog.csdn.net/autom_lishun/article/details/78424210

你可能感兴趣的:(iOS 获取 webView 加载完成后的高度)