更改RootViewcontroller

时间:2016-07-27 20:11:17

标签: ios swift2 popviewcontrolleranimated

在我的应用程序的第一次启动时,我想显示一个特定视图控制器说firstLaunchVC并为此我做这个

didFinishLaunchingWithOptions

if (itsFirstLaunch){
     self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
    let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
    var initialViewController: UIViewController
    initialViewController = mainStoryboard.instantiateViewControllerWithIdentifier("SignupViewController") as! SignupViewController 

    self.window?.rootViewController = initialViewController

    self.window?.makeKeyAndVisible()
}

它工作正常,但现在完成我的注册后我想将我的RootViewController更改为我的默认ViewController说DefaultVC

appDelegate.window = UIWindow(frame: UIScreen.mainScreen().bounds)
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
var initialViewController: UIViewController
initialViewController = mainStoryboard.instantiateViewControllerWithIdentifier("DefaultVC") as! UITabBarController 
UIView.transitionWithView(self.appDelegate.window!, duration: 0.3, options: .TransitionFlipFromBottom, animations: {() -> Void in

    self.appDelegate.window?.rootViewController = initialViewController
    self.appDelegate.window?.makeKeyAndVisible()
    }, completion: { _ in }
)

它的工作正常,你也可以看到我在这个过渡中添加了动画

 UIView.transitionWithView(self.appDelegate.window!, duration: 0.3, options: .TransitionFlipFromBottom, animations: {()....

但是这个动画还不够好我们这里有很多选项,如:

TransitionFlipFromLeft
TransitionFlipFromRight
TransitionCurlUp
TransitionCurlDown
TransitionCrossDissolve
TransitionFlipFromTop
TransitionFlipFromBottom etc...

但是没有一个符合我的要求(完全是可怕的)我想要的是动画当一个ViewController被解雇时我想从一个方向向外滑出vc如果有人可以指导我怎么做这个那么它对我有帮助

0 个答案:

没有答案