prepareForSegue已调用但未加载下一个UIViewController

时间:2014-07-30 16:49:16

标签: ios uiviewcontroller swift segue uistoryboardsegue

我正在使用两个UIViewControllers处理应用程序。应用程序启动时,会触发LoaderViewController。在该视图控制器上,我正在设置启动应用程序,然后尝试进入ViewController。问题是prepareForSegue方法被正确调用,但它什么也没做。我尝试按照之前的方式进行导航。我可能在这里缺少什么?我在iOS开发方面仍然很新。

 class LoaderViewController: UIViewController {
 @IBOutlet weak var applicationLoadingIndicator: UIActivityIndicatorView!

  override func didReceiveMemoryWarning() {
      super.didReceiveMemoryWarning()
  }

  override func viewDidLoad() {
      super.viewDidLoad()


      applicationLoadingIndicator.startAnimating()
      self.performSegueWithIdentifier("ToMenuViewController", sender: self)
  }

  override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
      var vc: ViewController = segue.destinationViewController as ViewController
  }
}

以下是故事板的图片: enter image description here

编辑 - 解决方案:

解决方法是将performSegueWithIdentifier调用更改为viewDidAppear()方法。

1 个答案:

答案 0 :(得分:5)

你不应该在viewDidLoad中喋喋不休,因为这太快了。至少,您应该转而使用viewDidAppear