UIWebView加载Loading...两种方法
第一种方法:使用UIView and UIActivityIndicatorView
//创建UIWebView WebView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 44, 320, 400)]; [WebView setUserInteractionEnabled:NO]; [WebView setBackgroundColor:[UIColor clearColor]]; [WebView setDelegate:self]; [WebView setOpaque:NO];//使网页透明 NSString *path = @"http://www.baidu.com"; NSURL *url = [NSURL URLWithString:path]; [WebView loadRequest:[NSURLRequest requestWithURL:url]]; //创建UIActivityIndicatorView背底半透明View UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; [view setTag:103]; [view setBackgroundColor:[UIColor blackColor]]; [view setAlpha:0.8]; [self.view addSubview:view]; activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 32.0f, 32.0f)]; [activityIndicator setCenter:view.center]; [activityIndicator setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleWhite]; [view addSubview:activityIndicator]; [self.view addSubview:WebView]; [view release]; [WebView release]; //开始加载数据 - (void)webViewDidStartLoad:(UIWebView *)webView { [activityIndicator startAnimating]; } //数据加载完 - (void)webViewDidFinishLoad:(UIWebView *)webView { [activityIndicator stopAnimating]; UIView *view = (UIView *)[self.view viewWithTag:103]; [view removeFromSuperview]; }
第二种方法:使用UIAlertView and UIActivityIndicatorView
/加载网页动画 - (void)webViewDidStartLoad:(UIWebView *)webView{ if (myAlert==nil){ myAlert = [[UIAlertView alloc] initWithTitle:nil message: @"读取中..." delegate: self cancelButtonTitle: nil otherButtonTitles: nil]; UIActivityIndicatorView *activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite]; activityView.frame = CGRectMake(120.f, 48.0f, 38.0f, 38.0f); [myAlert addSubview:activityView]; [activityView startAnimating]; [myAlert show]; } } - (void)webViewDidFinishLoad:(UIWebView *)webView{ [myAlert dismissWithClickedButtonIndex:0 animated:YES]; }