我使用UIWebView
设置了loadHtmlString:
的内容。我不会在需要之前将它们添加到UIView
,但我需要知道每个它们的最大滚动高度。
问题是UIWebView
在添加到superView
之前没有开始加载它的数据,而且是加载导致此问题的内容的延迟。
问题:是否可以强制UIWebView
加载其内容,而不是添加到视图中?
答案 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而不必等待最初的滚动高度,并在以后更正它们。