一、先设置WebView的高度为0,然后在其加载结束后的代理方法中根据contentSize设置其高度
//初始话一个UIWebView:
self.webView = [[[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 0)] autorelease];(这里需要注意的一点是,frame的高度一定要设置为0,方便后面动态设置高度);
//设置UIWebView的delegate:self.webView=self(这个就不多说了)
//实现UIWebView 的代理方法webViewDidFinishLoad:
- (void)webViewDidFinishLoad:(UIWebView *)webView{
CGRect rect= webView.frame;
rect.size.height=webView.scrollView.contentSize.height;(此方法是将webView.scrollView的contentSize的高度赋给webView的高度,所以之前在初始化webView的时候将webView的默认高度设置为0意义就在于此,这样contentSize.height就是内容的高度了)
NSLog(@"-----%f",webView.scrollView.contentSize.height);
webView.frame=rect;
}
二、通过系统方法获取其内容高度
CGFloat scrollHeight = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"] floatValue];