确定内容大小
在许多情况下,例如在表视图单元格中使用 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);
}
该代码采用了另一种技巧,即在测量装配尺寸之前将网页视图的高度设置为 1。否则它只会报告当前帧大小。测量后,我们立即将高度设置为实际内容高度。