我使用异步进行发布请求
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *error)
我有连接停止时的回调,在这里我调用我的方法来停止 UIActivityIndicatorView
-(void)connectionDidFinishLoading:(NSURLConnection*)connection
{
NSLog(@"Connection finish");
[self stopAnimatingSpinner];
}
继承人停止动画方法(我已经尝试了组合和所有以下停止,删除隐藏方法
-(void)stopAnimatingSpinner{
[submittingActivity stopAnimating];
submittingActivity.hidden = YES;
[submittingActivity removeFromSuperview];
[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];
}
现在的问题是有时它会停止,有时它不会停止并且非常随机。如果我将活动的停止移动到完成数据解析而不是依赖连接回调,则行为完全相同。有时他们停止有时他们没有?
我唯一能想到的是连接阻塞了主线程,但为什么它有时会工作而不是其他人?