0

我设置了一个委托方法,它UIActivityIndicatorView在 aUIWebView开始加载时开始为 a 设置动画,并在UIWebView停止加载时停止为它设置动画。NSLogging 显示两个委托方法都被调用(即,webViewDidStartLoadingwebViewDidFinishLoading)。

- (void)webViewDidStartLoad:(UIWebView *)webView{
//start animating
[self.indicator startAnimating];
}

-(void)webViewDidFinishLoad:(UIWebView *)webView{
//finish animating
[self.indicator stopAnimating];
}

问题是页面在UIActivityIndicatorView显示之前完成加载。这意味着要么 a) 一切正常并且我的连接速度足够快以至于UIActivityIndicatorView不需要显示,要么 b) 并非一切正常。

但是我怎么知道它是a)还是b)?有没有办法人为地减慢我的连接速度?

4

3 回答 3

2

通过慢速代理隧道传输流量,因此您将有时间查看指示器是否显示。

一种方法是安装具有节流功能的Charles Proxy 。(并且对于其他 http-network 调试也非常方便)。

Windows 上的等效工具是Fiddler

于 2012-12-18T21:23:51.443 回答
1

在我的应用程序中,加载完成后我根本没有关闭/停止活动指示器,这表明它正在工作,然后我返回并停止。因此,如果它正在替换一个按钮,它仍然会显示,或者如果它在警报视图中,它仍然会出现在屏幕上。

于 2012-12-18T21:26:04.623 回答
1

我会注释掉您对 stopAnimating 的调用,并查看您的活动指示器视图是否仍在旋转。如果是,那么您知道您的请求非常快。

Or change the URL to load a webpage that you know takes a long time to load and see if you notice any difference.

于 2012-12-18T21:30:21.963 回答