from: http://blog.csdn.net/sjzsp/article/details/6541538
第一种方法:使用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, 37 .0f, 37 .0f) ;
[ myAlert addSubview : activityView] ;
[ activityView startAnimating] ;
[ myAlert show] ;
}
}
- ( void ) webViewDidFinishLoad: ( UIWebView * ) webView{
[ myAlert dismissWithClickedButtonIndex: 0 animated: YES ] ;
}