我正在使用UIActivityIndicatorView作为IBOutlet。我正在尝试使用[activityView startAnimating]和[activityView stopAnimating]来控制它。
我在XIB文件中启用了“停止时的Hides”和“动画”行为。
我想开始动画的旋转器内的几个用户行动控制器。但是,在第一个[activityView stopAnimating]调用之后,它不会再次响应[activityView startAnimating]调用。
这意味着在第一个[activityView stopAnimating]调用之后,旋转器就消失了。
我在下一个activeView.hidden = NO;电话之前尝试过[activityView startAnimating]。但不起作用。
对这个问题有什么想法吗?
编辑的
当我的控制器装好后,我就会跟着它,
do {
[self.activityIndicator startAnimating];
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
[webServiceCallOperation getResults];
[self.activityIndicator stopAnimating];
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
} while (![webServiceCallOperation isValideResponse] || [webServiceCallOperation isServerError]);在同一个控制器中,我有一个按钮单击的IBAction。
- (IBAction)tappedSearchButton:(id)sender
{
[self.activityIndicator startAnimating];
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
[self tappedSearchButtonAction];
[self.activityIndicator stopAnimating];
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
}我注意到旋转器没有在[self.activityIndicator startAnimating];调用之后就开始动画了。使用[self tappedSearchButtonAction];,我调用一个web服务并转到搜索结果视图。旋转器在更改视图之前开始动画。所以我才没看到。但是我想在web服务调用之前对它进行动画化,并且应该在我的web服务调用时对它进行动画化。
网络活动指示器的相同行为。
发布于 2012-03-22 11:42:04
正如aadhira所建议的那样,检查是否发布,以及是否在主线程上进行调用。
[NSObject performSelectorOnMainThread:@selector(SEL) withObject:nil waitUntilDone:YES];发布于 2012-09-05 08:22:54
它开始动画,因为正如您所说的,您已经启用了XIB文件中的动画行为。但是在你第一次停止它之后,它不再是动画了,直到你重新开始编程。
https://stackoverflow.com/questions/9820702
复制相似问题