第一种方法:使用UIView and UIActivityIndicatorView
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
//创建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]];
//创建<u><font color="red">UIActivityIndicatorView</font></u>背底半透明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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//加载网页动画
- (
void
)webViewDidStartLoad:(UIWebView *)webView{
if
(myAlert==
nil
){
myAlert = [[UIAlertView alloc] initWithTitle:
nil
message: @
"正在讀取網路資料"
delegate:
self
cancelButtonTitle:
nil
otherButtonTitles:
nil
];
<u><font color=
"red"
>UIActivityIndicatorView</font></u> *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
];
}
|