如何在不使用按钮的情况下从一个视图控制器移动到另一个视图

时间:2018-02-12 23:46:03

标签: swift3 xcode8

我正在使用以下代码段:

let secondViewController = self.storyboard?.instantiateViewController(withIdentifier: "secondViewController") as! secondViewController

self.navigationController.pushViewController(secondViewController, animated: true)

我想在viewDidLoad中执行此代码。我将在一系列if语句中使用类似的东西。

我使用了一些我在这里找到的使用标签的代码。那没起效。程序可以在不使用按钮的情况下从一个viewController移动吗?几乎每个例子,youtube视频都使用一个按钮。我会在适当时使用按钮

1 个答案:

答案 0 :(得分:0)

在当前视图控制器加载之前,无法推送视图控制器。您应该在viewDidAppear

中调用您的代码

如果您计划在应用启动时指向特定视图,我建议您将逻辑移至方法中的AppDelegatedidFinishLaunching。这样您就不需要不必要地加载视图。

viewDidAppear

中推送的ViewController示例
///
/// FUNCTION - VIEW DID APPEAR    
///
override func viewDidAppear(_ animated: Bool) {

     // GET VIEW CONTROLLER
     let secondViewController = self.storyboard?.instantiateViewController(withIdentifier: "secondViewController") as! secondViewController

     // PUSH VIEW ONTOP OF CURRENT NAVIGATION CONTROLLER
     self.navigationController.pushViewController(secondViewController, animated: true)

} // END - FUNCTION