Ole в значительной степени правильно, но есть одна хитрость: вы не возражаете против синхронной обработки (часто именно из-за этого, прежде всего, для отображения индикатора активности).
Сначала переместите ваш код, который вы хотите обработать, пока спиннер работает по своему собственному методу. Тогда сделай
[spinner startAnimating];
[self performSelector:@selector(methodname) withObject:nil afterDelay:0];
AfterDelay: 0 означает следующий раз в цикле выполнения. Таким образом, прядильщик начинает.