ビギグラマーのノート

自作PCやプログラミングについてのブログです。

コードで画面遷移 -マニュアルSegue-

環境 Swift 3.0.2 xcode 8.2.1

ちょっと引っかかったのでボタンなどで画面遷移ではなく、好きなタイミングで画面遷移する方法を書いておきます。

"autoSegue"は実行したいSegueのidentifier

コメントでも書いた通り、viewDidLoad内でpreformSegueを実行すると「Who view is not in the window hierarchy」になります。画面が表示されていないのに次の画面に移ろうと認め正常に動かないようです。なのでviewDidAppear内で画面表示後に自動画面遷移をしなくてはなりません。

画面の読み込み等の順番はここを参考にしました。

blog.livedoor.jp

すなわち何でもかんでも初めから書いてあるviewDidLoad内でやろうとしないこと、ということです。