UIWebView的实际高度问题

项目中需要嵌入H5时(如商品详情),需要展示完整的webView时,提供两种获取的方式,这两种方式都需要配合UIWebView的代理方法使用.(建议使用第二种)

第一种:通过self.listHeaderWebView.scrollView.contentSize(偶获取不准)

<pre>-(void)webViewDidFinishLoad:(UIWebView *)webView{

if (webView.isLoading) {
    return;
}

//获取加载完的高度
CGFloat htmlHeight = self.listHeaderWebView.scrollView.contentSize.height
NSLog(@"webViewDidFinishLoad---htmlHeight:%@",htmlHeight);

CGRect newFrame = webView.frame;

newFrame.size.height = htmlHeight;

self.webView.frame = newFrame;

}</pre>

第二种:通过JS获取

<pre>-(void)webViewDidFinishLoad:(UIWebView *)webView{

if (webView.isLoading) {
    return;
}

//获取加载完的高度
NSString *htmlHeight = [self.listHeaderWebView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"];  
NSLog(@"webViewDidFinishLoad---htmlHeight:%@",htmlHeight);

CGRect newFrame = webView.frame;

newFrame.size.height = htmlHeight.floatValue;

self.webView.frame = newFrame;

}</pre>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 如上两张图片所示,红色线框内的内容为H5内容,其余上下均为原生。图片1考虑在UITableViewCell中嵌入U...
    iOSPeter阅读 2,290评论 0 5
  • UIWebView用于在App中嵌入网页内容,通常情况下是html格式的网页,也支持pdf, word等文档。 首...
    fankang阅读 2,034评论 0 1
  • IOS之UIWebView的使用 刚接触IOS开发1年多,现在对于 混合式 移动端开发越来越流行,因为开发成本上、...
    学无止境666阅读 45,820评论 5 53
  • 17年2月18+1day 老爹请我们一家老小吃涮锅。就在我大快朵颐的时候,那么福至心灵地一下,我抬头看了一眼宝宝椅...
    奇妙和光阅读 202评论 0 0
  • 这一两年因为各类新媒体的兴起,我们不仅得已从那些热传的文章中学到很多“为人处世的大道理”,更重要的是,我们还知道了...
    写故事的燕子阅读 537评论 0 1