Вы можете создать новый UIViewController, который содержит представление контейнера в раскадровке, и назначить контроллер вида карты сети поездов в виде контейнера.
Затем в коде вы можете создать экземпляр контроллера вид карты из раскадровки:
self.mapViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MapViewController"];
Читайте больше зрения контейнера, чтобы понять на следующих строках, предполагая networkMapViewController начальное контроллер представления, что вы хотите флип в mapViewController:
[self.networkMapViewConroller willMoveToParentViewController:nil];
[self addChildViewController:self.mapViewController];
[self.mapViewController didMoveToParentViewController];
Затем вы можете использовать метод контроллера представления transitionFromViewController: toViewController: продолжительность: опции: анимации: завершение:
[self transitionFromViewController:self.networkMapViewController
toViewController:self.mapViewController
duration:.5
options:UIViewAnimationOptionCurveEaseInOut|UIViewAnimationOptionTransitionFlipFromRight
animations:nil
completion:^(BOOL finished) {
[self.networkMapViewController removeFromParentViewController];
}];
Вам необходимо будет написать похожие строки для изменения обратно с контроллера отображения карты на networkMapViewController.
Я попытался создать пользовательский segue, и он работает (flip effect), но я теряю навигационную панель для последовательного segue. –