UIWebView の読み込み時に UIImageView をアニメーションとして使用し、読み込みが完了したらそのビューを削除しようとしています。ただし、webview の読み込みが開始および停止したときにアニメーションを開始/停止することはできません。コード スニペット:
@synthesize webView; //UIWebView
@synthesize loadView; //UIImageView
- (void)viewDidLoad {
// ...
loadView = [[UIImageView alloc] initWithFrame:[self.view bounds]];
[loadView setAnimationImages:[NSArray arrayWithObjects:
[UIImage imageNamed:@"image1.png"],
[UIImage imageNamed:@"image2.png"],
[UIImage imageNamed:@"image3.png"],
nil]];
[loadView setTag:1];
[loadView setAnimationDuration:1.0f];
[loadView setAnimationRepeatCount:0];
[self.view addSubview:loadView];
[webView loadRequest:request]; //request is defined somewhere else
}
- (void)webViewDidStartLoad:(UIWebView *)curWebView {
[loadView startAnimating];
}
- (void)webViewDidFinishLoad:(UIWebView *)curWebView {
[loadView removeFromSuperview];
}
- (void)webView:(UIWebView *)curWebView didFailLoadWithError:(NSError *)error {
[loadView stopAnimating];
// ... Code to show reload button
}
を呼び出す[loadView startAnimating]
とviewDidLoad
、アニメーション化されますが[loadView stopAnimating]
、webView:didFailLoadWithError
それでも機能しません。それ以外の場合、laodView は空白の白い画面のみを表示します。