1

我正在尝试实现一个简单的微调器,而我的应用程序从 Internet 中查找数据。我的数据抓取工作正常,但有时需要一段时间,所以我想使用 UIActivityIndi​​catorView 让用户知道应用程序没有崩溃。但它目前无法正常工作。我从这些论坛和其他论坛中收集了尽可能多的信息,但由于某种原因它不起作用。同样,我觉得这个解决方案可能非常简单。这就是我正在做的事情:

我将微调器声明为 .h 文件中的属性:

 @property (strong, nonatomic) IBOutlet UIActivityIndicatorView *activityIndicator;

我还使用情节提要将微调器对象拖到视图控制器上,并使用 CTRL 拖动创建了到属性的连接。

触发 URL 请求(以及随后的数据加载和解析)的按钮实际上会触发一个 segue,所以我认为使用

 - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender

功能是开始工作的好地方。除了 prepareforsegue 功能外,我没有附加到按钮的特定功能。(也许这是一个问题?是否需要关联 IBAction?...)

无论如何,该功能会触发:

 [self GoAheadAndGetData];

反过来,它的开头是这样的:

 - (void)GoAheadAndGetData {

[NSThread detachNewThreadSelector:@selector(threadStartAnimating:) toTarget:self withObject:nil];
  ....... etc

所以这个函数看起来像这样:

 - (void) threadStartAnimating:(id)data 
 {
    [activityIndicator startAnimating];
 }

最后,在 GoAheadAndGetData 函数的末尾,我放置了停止动画调用,如下所示:

 [activityIndicator stopAnimating];

明白了吗?如果有人需要更多信息,请告诉我 - 我已经尝试将其简化为基础知识,所以我不必在这里发布大量代码......

提前谢谢你 - 我真的很感激我能得到的任何帮助。我不太清楚为什么它在这一点上不起作用。

4

0 回答 0