iOS 确定内容大小

示例

在许多情况下,例如在表视图单元格中使用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。否则,它将仅报告当前帧大小。测量后,我们立即将高度设置为实际内容的高度。

资源