读书人

UIWebView加载Loading.两种方法

发布时间: 2012-08-02 11:35:26 作者: rapoo

UIWebView加载Loading...两种方法

第一种方法:使用UIView and UIActivityIndicatorView

//创建UIWebViewWebView = [[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, 37.0f, 37.0f);     [myAlert addSubview:activityView];     [activityView startAnimating];     [myAlert show];     }} - (void)webViewDidFinishLoad:(UIWebView *)webView{      [myAlert dismissWithClickedButtonIndex:0 animated:YES];}
?

来源: http://www.cocoachina.com/bbs/read.php?tid=9419

?

用法一:只显示不停旋转的进度滚轮指示器。

//显示进度滚轮指示器-(void)showWaiting {    progressInd=[[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle: UIActivityIndicatorViewStyleWhiteLarge];    progressInd.center=CGPointMake(self.view.center.x,240);    [self.navigationController.view addSubview:progressInd];    [progressInd startAnimating];}//消除滚动轮指示器-(void)hideWaiting{    [progressInd stopAnimating];}
?

用法二:带有半透明背景的进度轮指示器。

//显示进度滚轮指示器-(void)showWaiting:(UIView *)parent{    int width = 32, height = 32;    CGRect frame = CGRectMake(100, 200, 110, 70) ;//[parent frame]; //[[UIScreen mainScreen] applicationFrame];    int x = frame.size.width;    int y = frame.size.height;      frame = CGRectMake((x - width) / 2, (y - height) / 2, width, height);    UIActivityIndicatorView* progressInd = [[UIActivityIndicatorView alloc]initWithFrame:frame];    [progressInd startAnimating];    progressInd.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;    frame = CGRectMake((x - 70)/2, (y - height) / 2 + height, 80, 20);    UILabel *waitingLable = [[UILabel alloc] initWithFrame:frame];    waitingLable.text = @"Loading...";    waitingLable.textColor = [UIColor whiteColor];    waitingLable.font = [UIFont systemFontOfSize:15];    waitingLable.backgroundColor = [UIColor clearColor];    frame =  CGRectMake(100, 200, 110, 70) ;//[parent frame];    UIView *theView = [[UIView alloc] initWithFrame:frame];    theView.backgroundColor = [UIColor blackColor];    theView.alpha = 0.7;    [theView addSubview:progressInd];    [theView addSubview:waitingLable];    [progressInd release];    [waitingLable release];    [theView setTag:9999];    [parent addSubview:theView];    [theView release];}//消除滚动轮指示器-(void)hideWaiting{    [[self.view viewWithTag:9999] removeFromSuperview];}
?

来源: http://blog.csdn.net/lovenjoe/article/details/7498238

?

?

读书人网 >Web前端

热点推荐