在Swift 4中尝试使用视图控制器,各种搜索显示在视图控制器之间移动的几种不同方法。我首先开始使用以下代码来打开新的视图控制器:
let vc = self.storyboard?.instantiateViewController(withIdentifier: "registration2") as! ViewRegistration2
self.present(vc, animated: true, completion: nil)
但是后来我找到了这种方法:
performSeque(withIdentifier: "sequeName", sender: self)
使用这种方法,我必须创建一个segue并将其命名,这很好,但是我想知道哪种是最佳实践,并且/或者有没有理由使用一种或另一种方法?
答案 0 :(得分:2)
Segues只能与情节提要板一起使用。它们通常是自动实例化的,并在情节提要中创建。您还可以在代码中执行segue。 使用segues时,情节提要会实例化视图控制器并触发过渡。
不使用情节提要时,将使用UIViewController.present(:animated:completion:)
显示视图控制器。
看起来您正在使用情节提要,在这种情况下,您应该使用segues,因为第一个代码段实际上是在执行segues的工作。
答案 1 :(得分:0)
您可以在代码上使用present函数来呈现ViewController。 像这样。 self.present(VC,动画:true,完成:无)
如果Storyboard上有ViewControllers,performSeque是一个好方法。