Я написал пользовательский UIStoryboardSegue.Переход не отображается между представлениями в пользовательском UIStoryboardSegue
Единственный код в моем файле CustomSegue.m является:
-(void) perform {
UIViewController* sourceViewController = (UIViewController *) self.sourceViewController;
UIViewController* destinationViewController = (UIViewController *) self.destinationViewController;
UIWindow* window = UIApplication.sharedApplication.keyWindow;
window.rootViewController = destinationViewController;
window.rootViewController = sourceViewController;
[UIView transitionWithView: sourceViewController.view.window
duration: 0.5
options: UIViewAnimationOptionTransitionFlipFromLeft
animations: ^{window.rootViewController = destinationViewController;}
completion: ^(BOOL finished) {}
];
}
Если настроить раскадровку так просто два UIViewControllers, с помощью кнопки на первом связывании ко второму, все работает, как и планировалось : есть переключение с левого перехода.
Но: если я поместил UINavigationController перед первым UIViewController, segue теперь отображает второй контроллер представления, не делая переворота слева.
Что происходит? Почему переход не работает с контроллером навигации?
Благодарим за помощь!
(В случае, если вас интересует, почему я использую пользовательский SEGUE так, что я могу иметь вид мастер-деталь, появляющийся после некоторых страниц интро. Я вдохновлен this Stackoverflow answer.)
Я использовал ваш образец кода, и он отлично работает. – BlueLettuce16
Я рад это слышать! –