天天看點

UIWebView及加載loading界面

#import <UIKit/UIKit.h>

@interface MainViewController : UIViewController

{

    UIWebView *webView;

}

#import "MainViewController.h"

@interface MainViewController ()<UIWebViewDelegate>

@end

@implementation MainViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view.

    //建立webView

    webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 375, 550)];

    webView.delegate = self;

    NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString: @"http://www.baidu.com"]];

    [self.view addSubview:webView];

    [webView loadRequest:request];

}

    //網頁開始加載的時候調用

- (void )webViewDidStartLoad:(UIWebView  *)webView

{

    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 375, 550)];

    [view setTag:108];

    [view setBackgroundColor:[UIColor blackColor]];

    [view setAlpha:0.5];

    [self.view addSubview:view];

    //loading界面

    UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(0, 0, 32, 32)];

    [activityIndicator setCenter:view.center];

    [activityIndicator setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleWhite];

    [view addSubview:activityIndicator];

    [activityIndicator startAnimating];

}

    //網頁加載完成的時候調用

- (void )webViewDidFinishLoad:(UIWebView  *)webView

{

     UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(0, 0, 32, 32)];

    [activityIndicator stopAnimating];

    UIView *view = (UIView *)[self.view viewWithTag:108];

    [view removeFromSuperview];

}

    //網頁加載失敗的時候調用

- (void)webView:(UIWebView *)webView  didFailLoadWithError:(NSError *)error

{

    UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc]initWithFrame:CGRectMake(0, 0, 32, 32)];

    [activityIndicator stopAnimating];

    UIView *view = (UIView *)[self.view viewWithTag:108];

    [view removeFromSuperview];

}

繼續閱讀