0

私はwebViewDidFinishLoad自分のアプリで多くのことを使用してUIWebViewいますが、実際には 2 つのことが私を悩ませています。最初に、新しいコンテンツをUIWebViewにロードすると、同じページにロードされた最後のページが0.5秒間表示され、次のようなものを使用しUIWebViewて「クリーン」にする必要があります。UIWebView

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

新しいコンテンツをロードする前に。

私が抱えている2番目の問題であり、それがこの質問の主な問題です。新しいコンテンツを自分にロードして、UIWebView次のようなことをするとします。

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

場合によってはUIWebView、コンテンツが表示される前に が 0.5 秒間白く表示されます。私は、コンテンツが既にロードされているUIWebViewと推測していwebViewDidFinishLoad:webViewます。1 秒ほど表示される空白の画面を回避するために使用できる回避策はありますか?

アルファを 0 から 1 にアニメーション化することを考えましたが、その解決策は私には少し不自由に感じます。

4

1 に答える 1

0

Web ビューのコンテンツが実際にいつロードされたかがわかるように、JavaScript コールバックを追加してみてください。C/Objective-C への UIWebView コールバックの Javascript

于 2013-04-14T11:28:07.160 に答える