По моему опыту со встроенными анимациями Apple, они будут блокировать все, что происходит во время предварительной обработки.Это, в частности, происходит, когда вы хотите отобразить предварительный загрузчик, в то время как вы делаете немного волшебства со своим интерфейсом.Чтобы решить эту проблему, нужно выполнить собственное управление графическим интерфейсом в другом потоке:
[self performSelectorInBackground:@selector(showHideMenu) withObject:nil];
или, если возможно, удалить задачу анимации, пока вы не выполните то, что хотите
[self showHideMenu];
[self performSelector:@selector(doRotation) withObject:nil afterDelay:1];