首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何启动activity indicator?

如何启动activity indicator?
EN

Stack Overflow用户
提问于 2010-08-26 16:21:28
回答 4查看 1.3K关注 0票数 0

我想在用户按下webview上的任何链接时启动一个活动指示器。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-26 16:43:44

首先,将UIWebView出现在其中的ViewController指定为它的委托:在InterfaceBuilder或代码中,通过按住code并从UIWebView拖动到文件的所有者对象来执行此操作:

代码语言:javascript
复制
[myWebView setDelegate:myViewController];

然后,在ViewController.m文件中,您现在可以使用delegate方法来检测何时加载页面。每次在UIWebView中加载链接或新页面时,都会触发这些委托方法。

代码语言:javascript
复制
- (void)webViewDidStartLoad:(UIWebView *)webView {
     [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
}

- (void)webViewDidFinishLoad:(UIWebView *)webView {
     [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
}

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
     [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
}
票数 5
EN

Stack Overflow用户

发布于 2010-08-26 16:31:17

如果您想显示网络活动指示器,只需输入

代码语言:javascript
复制
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];

然后

代码语言:javascript
复制
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];

当你想隐藏它的时候

而如果您需要UIActivityIndicator

您必须在控制器中定义它,然后在XIB中输出它,然后

显示

代码语言:javascript
复制
[activityIndicator startAnimating];

隐藏

代码语言:javascript
复制
[activityIndicator stopAnimating];
票数 2
EN

Stack Overflow用户

发布于 2010-08-26 16:31:01

看一看UIWebViewDelegate Protocol.

它将允许您的代理在webview开始加载新内容时得到通知,这可能就是按下链接时的情况。你想要的委托方法是webViewDidStartLoad: -在它的实现中,你可以很容易地设置或启动你的活动指示器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3573287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档