Ios Iazy如何在应用程序启动时加载和预渲染带有UIWebView的ViewController?

Ios Iazy如何在应用程序启动时加载和预渲染带有UIWebView的ViewController?,ios,uiwebview,Ios,Uiwebview,我正在开发一个具有一系列层次化UITableViewController的应用程序,直到您最终被带到包含您要查找的信息的UIWebView。它工作正常,只是加载UIWebView时需要一段时间渲染并在加载前闪烁白色(所有我的视图,包括UITableViewController和HTML文件,都有黑色背景) 一旦加载并显示了UIWebView,这就不是什么问题了——我让它在加载内容的同时加载一个黑色背景的空HTML页面——但第一次总是很慢,给我一个白色的闪光 我试图通过初始化UIWebView并在

我正在开发一个具有一系列层次化UITableViewController的应用程序,直到您最终被带到包含您要查找的信息的UIWebView。它工作正常,只是加载UIWebView时需要一段时间渲染并在加载前闪烁白色(所有我的视图,包括UITableViewController和HTML文件,都有黑色背景)

一旦加载并显示了UIWebView,这就不是什么问题了——我让它在加载内容的同时加载一个黑色背景的空HTML页面——但第一次总是很慢,给我一个白色的闪光

我试图通过初始化UIWebView并在上一个UITableViewController仍处于活动状态时加载它来预渲染UIWebView,但它似乎不起作用。它允许我定义所有必要的参数,但是调用loadView方法,或者我尝试过的任何其他方法,都诱使它在屏幕上推送UIWebView之前加载黑色背景HTML


理想情况下,我希望它在应用程序启动后在后台初始化UIWebView,这样当它被推到导航堆栈上供用户查看时,它已经预装了黑色背景,因此没有白色闪烁

webview.backgroundColor=[UIColor blackColor]

您是否找到并回答了此问题。我也在做同样的事情。我发现我可以创建第二个webview并开始在屏幕外填充它。我使用javascript检查进度,以便知道它已呈现。然而,在我呈现两个页面(一个可见,一个不可见)大约3秒钟后,web页面的it线程崩溃


我的下一个想法是将两个屏幕都显示在离右边一英里远的未使用的屏幕上,这样最终用户就看不到它了。

第一次它仍然是白色闪烁,但时间似乎更短。我最后做的只是有一个称为“maskingView”的不透明黑色大视图这掩盖了webView,直到它从webView接收到didFinishedLoading委托回调,此时它隐藏了maskingView。这终于奏效了。