Как упоминает Iceydee, элементы пользовательского интерфейса (например, индикатор активности) выполняются в главном потоке. Если вы загружаете большой файл, загружаете что-то или что-то другое, что требует времени, вы должны выполнить это в другом потоке, если хотите анимировать элементы пользовательского интерфейса. Вы можете использовать Grand Central Dispatch, executeSelectorInBackGround или другие методы (не рекомендуется). Я бы сделал:
my code....
// active indicator activity
[otherClass performSelectorInBackground:@selector(method) withObject:nil]; // method that takes 5-6 seconds
my code...
Затем в методе otherClass остановите индикатор активности в главном потоке:
[activityIndicator performSelectorOnMainThread:@selector(stopAnimating) withObject:nil waitUntilDone:NO];