iOS Webview自适应实际内容高度的4种方法详解

 更新时间:2016年09月22日 16:31:10   投稿:mrr  
这篇文章主要介绍了iOS Webview自适应实际内容高度的4种方法详解,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下

//第一种方法

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
CGFloat webViewHeight=[webView.scrollView contentSize].height;
CGRect newFrame = webView.frame;
newFrame.size.height = webViewHeight;
webView.frame = newFrame;
_webTablewView.contentSize = CGSizeMake(320, newFrame.size.height + 64 + KWIDTH - 100);
}

//2.执行js语句 直接获取html文档的dom高度

- (void)webViewDidFinishLoad:(UIWebView *)webView{
CGFloatwebViewHeight =[[webViewstringByEvaluatingJavaScriptFromString:@document.body.offsetHeight]floatValue];
// CGFloat webViewHeight= [[webViewstringByEvaluatingJavaScriptFromString:@document.body.scrollHeight]floatValue];
CGRectnewFrame = webView.frame;
newFrame.size.height= webViewHeight;
webView.frame= newFrame;
}

//方法3.先将UIWebView的高度设为最小,然后再使用sizeThatFits就会返回刚好合适的大小

-(void)webViewDidFinishLoad:(UIWebView*)webVie{
CGSize actualSize = [webView sizeThatFits:CGSizeZero];
CGRect newFrame = webView.frame;
newFrame.size.height = actualSize.height;
webView.frame = newFrame;
}

//方法4.遍历webview子视图 获取UIWebDocumentView高度即实际高度

-(void)webViewDidFinishLoad:(UIWebView *)webView{
CGFloat webViewHeight = 0.0f;
if([webView.subviews count] > 0)
{
UIView *scrollerView = webView.subviews[0];
if([scrollerView.subviews count] >
0)
{
UIView *webDocView = scrollerView.subviews.lastObject;
if ([webDocView isKindOfClass:[NSClassFromString(@UIWebDocumentView)class]])
{
webViewHeight = webDocView.frame.size.height;//获取文档的高度
webView.frame=webDocView.frame;
//更新UIWebView 的高度
}
}
}
}

以上所述是小编给大家介绍的iOS Webview自适应实际内容高度的4种方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • ios动态库和静态库的区别

    ios动态库和静态库的区别

    这篇文章主要介绍了ios动态库和静态库的区别,帮助大家更好的理解和学习使用ios开发,感兴趣的朋友可以了解下
    2021-04-04
  • iOS推送增加右侧显示图Service Extension

    iOS推送增加右侧显示图Service Extension

    这篇文章主要为大家介绍了iOS推送增加右侧显示图Service Extension,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • IOS NSTimeInterval使用案例详解

    IOS NSTimeInterval使用案例详解

    这篇文章主要介绍了IOS NSTimeInterval使用案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • iOS开发自定义页脚和页眉技巧详解

    iOS开发自定义页脚和页眉技巧详解

    这篇文章主要为大家介绍了iOS开发自定义页脚和页眉的技巧示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • iOS 10即将来袭!升级你的iOS开发装备

    iOS 10即将来袭!升级你的iOS开发装备

    iOS 10来了!你必需的10款iOS开发必备工具,让你的开发过程事半功倍
    2016-07-07
  • iOS实现百度地图拖拽后更新位置以及反编码

    iOS实现百度地图拖拽后更新位置以及反编码

    百度地图已经开放了地图API,大家可以很方便的调用地图中的相应数据,并完成各项个性化的展示,下面这篇文章主要给大家介绍了关于iOS如何实现百度地图拖拽后更新位置以及反编码的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-12-12
  • iOS手势识别的详细使用方法(拖动,缩放,旋转,点击,手势依赖,自定义手势)

    iOS手势识别的详细使用方法(拖动,缩放,旋转,点击,手势依赖,自定义手势)

    这篇文章主要介绍了iOS手势识别的详细使用方法(拖动,缩放,旋转,点击,手势依赖,自定义手势),具有一定的参考价值,有需要的可以参考一下。
    2016-11-11
  • iOS实现按钮点击选中与被选中切换功能

    iOS实现按钮点击选中与被选中切换功能

    这篇文章主要介绍了iOS实现按钮点击选中与被选中切换功能,需要的朋友可以参考下
    2017-07-07
  • ios xcode警告与错误的分析总结

    ios xcode警告与错误的分析总结

    这篇文章主要给大家介绍了关于ios xcode警告与错误的相关资料,文中通过示例代码介绍的非常详细,对各位iOS开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • IOS CocoaPods详细使用方法

    IOS CocoaPods详细使用方法

    自从有了CocoaPods以后,这些繁杂的工作就不再需要我们亲力亲为了,只需要我们做好少量的配置工作,CocoaPods会为我们做好一切
    2016-09-09

最新评论