2016-08-24 5 views
2

slide-right-right 애니메이션으로 내 rootViewController를 변경하려고합니다. rootViewController를 변경할 때 오른쪽 애니메이션에서 슬라이드

나는 플립 애니메이션으로 작업을 수행하는 방법을 알고

let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let viewController = mainStoryboard.instantiateViewControllerWithIdentifier("LandingViewController") 


UIView.transitionWithView(UIApplication.sharedApplication().keyWindow!, 
          duration: 0.5, 
          options: UIViewAnimationOptions.TransitionFlipFromLeft, 
          animations: { UIApplication.sharedApplication().keyWindow?.rootViewController = viewController; }, 
          completion: nil) 

그러나, UIViewAnimationOptions은 슬라이드에서 오른쪽 애니메이션이 없습니다. 어떻게해야합니까?

+0

왜 필요가 도움이되기를 바랍니다이 코드를

//remove all previous controllers in the stack by settings viewControllers stack with only current viewController self.navigationController?.viewControllers = [self] 

을 간부 인 것인가? 그것은 어색해 보인다. 시스템 푸시 전환을 기본 설정하려는 것처럼 들립니다. 왜 네비게이션 컨트롤러를 루트보기 컨트롤러로 만들고 필요에 따라 밀어 넣고 팝핑하는 것이 좋을까요? – beyowulf

답변

0

viewController의 viewDidAppear에서,이

let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let viewController = mainStoryboard.instantiateViewControllerWithIdentifier("LandingViewController") 

let navigationController = UIApplication.sharedApplication().keyWindow?.rootViewController.navigationController 

//first push the viewController 
navigationController?.pushViewController(viewController, animated: true) 

을하려고하면 나는 그것이