-(void)webViewDidFinishLoad:(UIWebView
*)webView{
CGFloat
webViewHeight=[webView.scrollView
contentSize].height;
CGRect
newFrame
=
webView.frame;
newFrame.size.height
=
webViewHeight;
webView.frame
=
newFrame;
}
方法2:執行js語句 直接獲取html文檔的dom高度
-(void)webViewDidFinishLoad:(UIWebView
*)webView{
CGFloat
webViewHeight=
[[webView
stringByEvaluatingJavaScriptFromString:
@"document.body.offsetHeight"]floatValue];
// CGFloat webViewHeight= [[webView
stringByEvaluatingJavaScriptFromString:
@"document.body.scrollHeight"]floatValue];
CGRect
newFrame
=
webView.frame;
newFrame.size.height
=
webViewHeight;
webView.frame
=
newFrame;
}
方法3.先將UIWebView的高度設為最小,然後再使用sizeThatFits就會返回剛好合適的大小
-(void)webViewDidFinishLoad:(UIWebView
*)webView{
CGSize
actualSize
=
[webView
sizeThatFits:CGSizeZero];
CGRect
newFrame
=
webView.frame;
newFrame.size.height
=
actualSize.height;
webView.frame
=
newFrame;
}
方法4.遍歷webview子視圖 獲取UIWebDocumentView高度即實際高度
Objective-C
-(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 的高度
}
}
}
}