有没有办法更新UIWebView而不获得白色背景?

时间:2012-10-19 20:23:54

标签: iphone ios uiwebview

我有一个UIWebView,我想不时更新它的内容。但是当我更新内容时,我在加载数据时获得了白色背景(数据包括内部很少 JavaScripts 的html)。有没有办法毫不拖延地做到这一点?

我想到了下一个解决方案:我有2个webViews(webView和backgroundWebView)。当我需要更新webView时,我只是向backgroundWebView发出请求,等到数据加载后用webnWebView的内容替换webView。但我找不到任何解决方法如何替换它的内容

有什么建议吗?感谢

3 个答案:

答案 0 :(得分:4)

试试这个......

最初在 viewWillAppear 中隐藏 UIWebView ,然后将webview委托方法用作 webViewDidFinishLoad 。在此webview委托方法中,您的 UIWebView 可见。

例如

-(void)viewWillAppear:(BOOL)animated
{
  webView.hidden=YES;
}

-(void)webViewDidFinishLoad:(UIWebView *)webView
{
  webView.hidden=NO;
}   

您还可以在 UIWebView 后面使用任何颜色的UIView或 UIImageView 。所以,当您的 UIWebview 加载时,它会隐藏,您会看到它背后的 UIView UIImageview

答案 1 :(得分:0)

您可以将虚拟UIView作为占位符,并将UIWebView放在UIView内,其大小与UIView相同,并使用UIWebView替换removeFromSuperview addSubView / {{1}}。

答案 2 :(得分:0)

我认为你有2个UIWebView正在走上正轨,但是你应该等待第二个webview完成加载,然后再将其移动到前景视图中,而不是尝试将后台视图的HTML内容传递给前景视图。使用bringToFront:的第一个网页视图的顶部。

相关问题