0

ウェブサイトの読み込みが完了したら、回転を停止したいのですが...

私が持っているコード:

私の.hで

IBOutlet UIActivityIndicatorView *activityIndicator;

私の.mで

- (void)webViewDidStartLoad:(UIWebView *)webView {
[activityIndicator startAnimating];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[activityIndicator stopAnimating];
self.view = webView;
}

次に、それをペン先のファイル所有者に接続しました。回転しますが、止まりません!助言がありますか?ありがとう!

4

3 に答える 3

1

Webビューが実際にロードを終了することはありますか?ブレークポイントを設定して、そのメソッドにヒットしたことがあるかどうかを確認します。

そして、完全を期すために...あなたはあなたのView Controllerに設定されたwebviewのデリゲートを持っていますか?

Webビューのデリゲートを設定する方法は2つあります。ペン先にある場合は、Webビューをクリックして、デリゲートプロパティからファイルの所有者にドラッグします。または、viewDidLoadで、_webView.delegate=self;とだけ言います。

更新:私たちの会話の後、そして以下のコメントに関して、私は完全を期すために、そして同じ問題で将来これを見る他の人のためにこれを追加したいと思います。読み込みが完了した後にwebViewが巨大になった理由は、self.view = webviewと言ったときに、WebViewをViewControllerのviewプロパティに割り当てていたためです。その必要はありません。それを取り出しれば大丈夫です。

于 2012-04-12T13:55:32.950 に答える
0

Interface Builderの実際のUIActivityIndi​​catorViewオブジェクトに正しいトグル設定があることを確認し、正しくリンクされていることを確認してください。「止めたら隠す」のがいいと思います。

また、WebViewDelegateが実装されていることを確認してください。

于 2012-04-12T14:10:03.313 に答える
0

実装したとおりに機能するはずです。

次のコードを追加します

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
    [loadIndicator stopAnimating];
}

UIWebViewの読み込みが正しく完了していない可能性があります。

于 2012-04-12T13:55:19.263 に答える