iOS - 强制UIWebView加载内容?

时间:2011-10-25 20:27:07

标签: iphone objective-c ios uiwebview

我使用UIWebView设置了loadHtmlString:的内容。我不会在需要之前将它们添加到UIView,但我需要知道每个它们的最大滚动高度。

问题是UIWebView在添加到superView之前没有开始加载它的数据,而且是加载导致此问题的内容的延迟。

问题:是否可以强制UIWebView加载其内容,而不是添加到视图中?

3 个答案:

答案 0 :(得分:1)

您可以将其添加到视图中,并将其不透明度设置为0.01以强制加载。我之前必须使用MKMapView。

答案 1 :(得分:1)

我使用hidden的{​​{1}}属性 - 在添加视图之前将其设置为UIWebView,并将其清除为YES中的NO应该执行特技。

但是,你评论@ logancautrell的答案有点令人不安 - 你有没有计划在视图中添加许多网页浏览量?我假设您知道这一点,但以防万一:根据您可能的HTML(5)/ JavaScript / CSS代码,即使有少量的Web视图,iOS也需要分配大量资源,因此您可能会遇到严重的性能损失。 / p>

如果您打算经常更新网页浏览量,也许您可​​以从UIWebView的webViewDidFinishLoad:方法中受益?在某种程度上,我认为,性能影响是可以忍受的。

答案 2 :(得分:1)

我建议以某种方式预先计算滚动高度(不是在Web视图加载期间),或者找到一种方法来显示您的UIViews而不必等待最初的滚动高度,并在以后更正它们。