Xcode5 iOS7 Segues + popViewControllerAnimated = нарушенный переход
Поэтому я перенял приложение у другого разработчика, и жизнь в iOS 6 была прекрасной. К сожалению, они использовали Storyboard + Segues для управления навигацией приложения, и это полный беспорядок. Проблема, с которой я столкнулся в iOS7, заключается в том, что когда пользователь проходит несколько сегментов и заканчивает работу, приложение пытается перейти назад, используя popViewControllerAnimated.
Этот код вызывает ошибку:
((PhotoCaptureViewController*) self.navigationController.viewControllers[self.navigationController.viewControllers.count - 2]).editedImage = _image;
((PhotoCaptureViewController*) self.navigationController.viewControllers[self.navigationController.viewControllers.count - 2]).popBack = YES;
[self.navigationController popViewControllerAnimated:YES];
Этот код, кажется, хорошо перемещается назад:
[self.navigationController popViewControllerAnimated:YES];
Очевидно, я не думаю, что наведение и хитрость прохождения массива viewController navigationController - это хорошая идея (особенно без самоанализа), но почему это вызовет проблему только в iOS7? В Apple iOS 7 Api Diffs я не вижу, что popViewControllerAnimated устарела, поэтому я в растерянности.
Я даже не буду упоминать, как испорчен макет раскадровки, я проведу свои выходные, исправляя эту PITA.