Я делаю почтовый запрос, используя Async
[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];
}
Теперь проблема в том, что иногда он останавливается, иногда нет, и очень случайно. Если я перенесу остановку активности на завершение синтаксического анализа моих данных вместо того, чтобы полагаться на обратные вызовы соединения, поведение будет точно таким же. Иногда они останавливаются иногда нет?
Единственное, о чем я могу думать, это о том, что соединение блокирует основной поток, но почему иногда оно работает, а другие нет?