0

webViewDidFinishLoad在我的应用程序中使用了很多东西,UIWebView这确实让我感到困扰,嗯,实际上有两件事。首先,当我将新内容加载到 a 时,UIWebView我会在半秒内看到加载到同一页面的最后一页,UIWebView这将迫使我“清理”UIWebView使用以下内容:

[_mainWebView stringByEvaluatingJavaScriptFromString:@"document.open();document.close();"];

在加载新内容之前。

我遇到的第二个问题也是这个问题的主要问题是,如果我将一些新内容加载到我UIWebView并执行以下操作:

[_mainWebView loadHTMLString:htmlString baseURL:nil];
...
    - (void)webViewDidFinishLoad:(UIWebView *)webView {
            _mainWebView.alpha = 1;
    }

在某些情况下,UIWebView在显示内容之前会显示为白色半秒。我猜内容已经加载到了UIWebView,这就是为什么webViewDidFinishLoad:webView正在触发,但是对于显示内容的小型 html 页面比实际加载需要更长的时间。有什么解决方法可以用来避免显示一秒钟左右的空白屏幕但仍然保存那一秒钟?

我想过将 alpha 从 0 设置为 1,但这个解决方案对我来说有点蹩脚。

4

1 回答 1

0

尝试添加一个 javascript 回调,以便您知道 Web 视图内容何时实际加载:UIWebView 中的 Javascript 回调到 C/Objective-C

于 2013-04-14T11:28:07.160 回答