如何在swift中直接从故事板中的第一个导航控制器执行segue?

问题描述:

我需要从导航控制器加载故事板时执行segue。 Im在viewDidLoad()函数中使用UpdatesViewController().segueToPerform("SegueIdentifier.forcedUpgrade"),但它根本不触发。如何在swift中直接从故事板中的第一个导航控制器执行segue?

Storyboard

+0

用'UpdatesViewController()'创建的通用实例不是在Interface Builder中设计的实例。你需要参考具体的控制器。 – vadian

+0

谢谢@vadian。我很快就成为新人。我怎么做? – kevinabraham

+0

这取决于设计。实际上,导航控制器是后续视图和表格视图控制器的包装,并且第一个控制器会立即加载并显示。我不明白设计有两个导航控制器连接。 – vadian

解决这一点。

我不知道,如果你正在使用的方法是正确的。

我如何加载我的其他viewcontroller是通过检查。例如,一旦应用程序加载时,它检查是否用户已登录,如果不是它会通过添加另一视图控制器,然后从那里发送塞格斯推signin view controller

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

    //forexample using firebase 
    FIRAuth.auth()?.addAuthStateDidChangeListener({ (auth, user) in 
     if let user = user { 


     } else { 

      // assign storyboard to the name of your storyboard 
      let storyboard = UIStoryboard(name: "Main", bundle: nil) 

      //instantiate whichever controller in the storyboard 
      let signInViewController = storyboard.instantiateViewControllerWithIdentifier("SignIn") 

      //present viewcontroller 
      self.presentViewController(signInViewController, animated: true, completion: nil) 

     } 
    }) 



} 
+0

感谢您的回答@Chris – kevinabraham