打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
完美方案
userphoto

2017.06.19

关注
/////////////////////////////初始化,self.view是父控件/////////////////////////////////	_webView = [[UIWebView alloc] initWithFrame: CGRectMake(0, 0, self.view.frame.size.width, 0)];	_webView.delegate = self;	_webView.scrollView.bounces = NO;	_webView.scrollView.showsHorizontalScrollIndicator = NO;	_webView.scrollView.scrollEnabled = NO;	[_webView sizeToFit];
///////////////////////////////设置内容,这里包装一层div,用来获取内容实际高度(像素),htmlcontent是html格式的字符串////////////// NSString * htmlcontent = [NSString stringWithFormat:@"<div id=\"webview_content_wrapper\">%@</div>", htmlcontent]; [_webView loadHTMLString:htmlcontent baseURL:nil];
////////////////////////////////delegate的方法重载////////////////////////////////////////////- (void)webViewDidFinishLoad:(UIWebView *)webView{ //获取页面高度(像素) NSString * clientheight_str = [webView stringByEvaluatingJavaScriptFromString: @"document.body.offsetHeight"]; float clientheight = [clientheight_str floatValue]; //设置到WebView上 webView.frame = CGRectMake(0, 0, self.view.frame.size.width, clientheight); //获取WebView最佳尺寸(点) CGSize frame = [webView sizeThatFits:webView.frame.size]; //获取内容实际高度(像素) NSString * height_str= [webView stringByEvaluatingJavaScriptFromString: @"document.getElementById('webview_content_wrapper').offsetHeight + parseInt(window.getComputedStyle(document.getElementsByTagName('body')[0]).getPropertyValue('margin-top')) + parseInt(window.getComputedStyle(document.getElementsByTagName('body')[0]).getPropertyValue('margin-bottom'))"]; float height = [height_str floatValue]; //内容实际高度(像素)* 点和像素的比 height = height * frame.height / clientheight; //再次设置WebView高度(点) webView.frame = CGRectMake(0, 0, self.view.frame.size.width, height);}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
iOS开发 自定义UIAlertView 继承UIView
iPhone开发技巧之私有API(3)
网络获取图片大小自适应
关于textView根据输入内容自适应高度
iOS开发- UILabel 自动换行 自适应高度
UIWebView滚动到底部的代码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服