2

UIWebView? いくつかの観察で進行状況を判断する方法: 1. ダウンロードされたコンテンツの進行状況を判断するには、オブジェクトを作成してデータをNSURLConnection2 回フェッチする必要があります 。そのデータ text/html の場合、そのデータのレンダリングは不十分ですUIWebViewNSURLConnectionNSURLConnection

難点: a) データを 2 回フェッチするとプロセスが大幅に遅くなる可能性があるため、ここに示されているようなプライベート API を使用することは可能ですか (アプリストアは安全ですか?): https://github.com/petr-inmite/imtwebview

b) できない場合、どのように進行状況バーを表示できますか?

c) また、ミラーを使用してデータを非同期にダウンロードすると、ロードNSURLConnectionの進行状況が反映されますか? UIWebViewデータを 2 回フェッチすると、パフォーマンスはどの程度低下するでしょうか?

プログレスバーを表示しているサファリ、イルカのようないくつかのブラウザがあります...これを行う方法に関するアイデアはありますか???

4

1 に答える 1

1

そのためにデリゲートを使用しUIWebViewます。最初に WebView のデリゲートを設定してから、selfこれらのメソッドを使用します。この前に、uiwebview の進行状況を示すビューにスピナーを作成して追加します。UIActivityIndicatorView *spinner

- (void)webViewDidStartLoad:(UIWebView *)localWebView {

    [ spinner performSelectorInBackground: @selector(startAnimating) withObject: nil];
}

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {

    [ spinner performSelectorInBackground: @selector(stopAnimating) withObject: nil];

}

- (void)webViewDidFinishLoad:(UIWebView *)localWebView {

    [ spinner performSelectorInBackground: @selector(stopAnimating) withObject: nil];
}
于 2012-10-23T11:01:57.483 に答える