如何在swift中切换视图控制器?

我试图从一个UIViewController切换到另一个使用代码。 现在我有,

self.presentViewController(ResultViewController(), animated: true, completion: nil) 

所有这一切正在带我到一个黑屏而不是ResultViewController。 有什么build议么?

与故事板。 为第二个视图控制器创build一个swift文件(SecondViewController.swift),并在适当的函数中input:

 let secondViewController = self.storyboard?.instantiateViewController(withIdentifier: "secondViewController") as! secondViewController self.navigationController.pushViewController(secondViewController, animated: true) 

没有故事板

 let secondViewController = ViewController(nibNameOrNil: NibName, bundleOrNil: nil) self.presentViewController(secondViewController, animated: true, completion: nil) 

你可以试试这个

 let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle:nil) let resultViewController = storyBoard.instantiateViewControllerWithIdentifier("ResultView") as ResultViewController self.presentViewController(resultViewController, animated:true, completion:nil) 

确保你设置你的视图控制器标识符。

在这里输入图像说明

尝试这个:

 let vc = ViewController(nibNameOrNil: yourNibName, bundleOrNil: nil) self.presentViewController(vc, animated: true, completion: nil) 

希望这可以帮助.. :)

最简单的方法是通过右键单击正在开始的视图并将蓝线拖到结果视图控制器中,然后点击show segue选项来创build一个segue。 然后将segue的标识符设置为“segue”。 现在,无论你想在你的视图控制器中添加这个代码:

 self.performSegueWithIdentifier("segue", sender: nil) 

这将触发将会去你的resultViewController的赛格

在iOS屏幕之间切换的最简单方法是。 在当前屏幕上添加一个button。 然后按下控制button并拖动到目标屏幕。 然后select推。 当你点击button时,屏幕将切换到目标屏幕。 确保你使用的是UINavigationViewController。

来源: ios UINavigationController教程 。

Swift 3

以模态方式呈现控制器

 let vc = self.storyboard!.instantiateWithIdentifier("SecondViewController") self.present(vc, animate: true, completion: nil) 

显示一个控制器

 self.show(vc, sender: self)