如何获得适当的UIWebView内容高度?

我在View中添加了UIWebView,在ScrollView中添加了这个视图。

我想获取UIWebView内容的框架。 那么我可以设置框架来查看和滚动视图?

我知道我们可以通过使用JavaScript来获得高度。 如下所述:

float height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] floatValue]; 

但是,当我旋转视图并重新计算UIWebView内容的高度在didRotateFromInterfaceOrientation::(UIInterfaceOrientation)fromInterfaceOrientation方法,则内容高度增加。

所以请给我build议我怎样才能得到适当的高度,当我旋转方向?

谢谢。

采用这种方法:

 - (void) webViewDidFinishLoad:(UIWebView *)webView{ CGRect frame = wvContent.frame; CGSize fittingSize = [wvContent sizeThatFits:CGSizeZero]; frame.size = fittingSize; wvContent.frame = frame; } 

然后每当设备旋转时调用此方法:

 - (void) reloadContent { CGRect frame = wvContent.frame; frame.size.height = 1; frame.size.width = wvContent.frame.size.width; // you should change webview's width here. wvContent.frame = frame; [wvContent loadHTMLString:yourHTML baseURL:nil]; // reload webview } 

希望帮助:)

确保在加载所有内容时检索高度。

您可以添加一个方法来计算UIWebView的委托方法中的高度

 - (void)webViewDidFinishLoad:(UIWebView *)webView{ float height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] floatValue]; }