0

UIWebView didFailWithError の下で、UIButton を作成してビューに追加します。

 UIButton *refreshButton = [UIButton buttonWithType:UIButtonTypeCustom];
 ...
 ....
 [self.imageView addSubview:refreshButton];

ボタンをクリックすると、指定された URL を webView にリロードするように要求します。

didFailWithErrorこのメソッドが終了した後、UIButtonは自動的に解放されます。

リロード後に didFailWithError が再びキャッチされた場合、UIButton を最初から再作成する必要があると言うのは正しいでしょうか。

また、webViewDidFinishLoad のビューから UIButton を削除するにはどうすればよいですか

[refreshButton removefromsuperview]

ありがとう

4

1 に答える 1

0

このdidFailWithErrorメソッドが終了した後にUIButtonに何が起こるかは、自動的に解放されます。

ボタンまたはボタンのスーパービューを削除しない場合、ボタンはそこにとどまります...

次に、リロードがもう一度失敗した場合、UIButtonを最初から再作成する必要があると言ったのは正しいでしょうか。

self.imageView実際には、これは、アンロードされるか、明示的にボタンを削除した場合にのみ必要になります...

また、webViewDidFinishLoadのビューからUIButtonを削除するにはどうすればよいですか。

        [refreshButton removefromsuperview]

これは正しいですがrefreshButton、クラスのプロパティとして定義する必要があります(そうしないと、のローカル変数にdidFailWithErrorなり、他のメソッドから参照できなくなります)。

おそらく、ボタンはリロードをトリガーするので、でボタンを削除することもできますwebViewDidStartLoad:

于 2012-10-24T15:34:16.013 に答える