【问题标题】:UIWebView: calculating height of webview body content when reloading html dynamically?UIWebView:动态重新加载html时计算webview正文内容的高度?
【发布时间】:2011-10-13 05:20:37
【问题描述】:

当我调用 loadHTMLString 来加载 UIWebView 中的内容,并在 didFinishLoad() 方法中计算 webview 内容的高度时,它给出了一个高度 h,但是如果我再次用其他 HTML 重新加载它,它不会返回准确的高度内容如果它比以前的内容小,但通过一次又一次地重新加载,它会降低它的高度,比如 12 px 并达到它的确切高度。

但是如果新的内容内容高度大于之前的内容高度,则计算成功。

有谁知道发生这种情况的根本原因吗?如果是,请帮忙。

【问题讨论】:

    标签: iphone uiwebview


    【解决方案1】:

    这就是我所做的,尽管在我的情况下,我的 webview 在 uitableview 中。

    - (void)webViewDidFinishLoad:(UIWebView *)webview{
        float webHeight;
        CGRect frame = webview.frame;
        frame.size.height = 1;
        webview.frame = frame;
        CGSize fittingSize = [webview sizeThatFits:CGSizeZero];
        frame.size = fittingSize;
        webview.frame = frame;
        webHeight=fittingSize.height;
        rowHt=webHeight;
        [aTableView reloadData];
    }
    

    每当重新加载 web 视图时,都会调用此委托方法。在这里,我再次将帧大小设置为新值。再次正如我所说,我的 webview 在 tableview 中,所以我调用 reloadData 方法。但是这个对我很有效....

    【讨论】:

    • 我使用 javascript 来检索高度,但现在可以使用 sizeThatFits webView 方法...对我有很大帮助..
    • 我面临的问题是,在 Ios4 中加载 webView 时,需要花费一些时间,并且在此之前加载了 tableview,导致单元格高度崩溃......有什么办法吗?
    猜你喜欢
    • 1970-01-01
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 2022-07-08
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    相关资源
    最近更新 更多