UIActivityIndi​​cator与UIWebView loadRequest?

Dam*_*ils 4 objective-c nsurl uiactivityindicatorview ios

所以我有一个包含HTML内容的Web视图的视图.这是我显示它的代码:

NSURL *url = [NSURL URLWithString:urlWeb];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[vue loadRequest:request];
vue.scalesPageToFit = YES;
Run Code Online (Sandbox Code Playgroud)

这很好用.但是当然在显示HTML内容之前有一点延迟,我想在此时显示一个UIActivityIndi​​cator.

我知道我必须使用:

[myActivityIndicator startAnimating];
[myActivityIndicator stopAnimating];
Run Code Online (Sandbox Code Playgroud)

我唯一想念的是如何知道HTML内容何时完全加载?

谢谢你的建议!

Mar*_*ace 12

您可以实现一个协议来了解UIWebViewDelegate.如果您实现webViewDidFinishLoad方法,您可以知道内容何时完全加载:

这是你的代码:

[activityIndicator startAnimating];

NSURL *url = [NSURL URLWithString:urlWeb];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[vue loadRequest:request];
vue.scalesPageToFit = YES;
Run Code Online (Sandbox Code Playgroud)

这是协议方法

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    [activityIndicator stopAnimating];
}
Run Code Online (Sandbox Code Playgroud)

在加载请求之前,请记住将您的类设置为UIWebView的委托.