在许多情况下,例如在表视图单元格中使用Web视图时,确定呈现的HTML页面的内容大小非常重要。加载页面后,可以在UIWebViewDelegate委托方法中进行计算:
- (void) webViewDidFinishLoad:(UIWebView *) aWebView {
CGRect frame = aWebView.frame;
frame.size.height = 1;
aWebView.frame= frame;
CGSize fittingSize = [aWebView sizeThatFits:CGSizeZero];
frame.size= fittingSize;
aWebView.frame= frame;
NSLog(@"size: %f, %f", fittingSize.width, fittingSize.height);
}该代码采用了另一种技巧,即在测量配件尺寸之前将Web视图的高度短时间设置为1。否则,它将仅报告当前帧大小。测量后,我们立即将高度设置为实际内容的高度。
资源