UINavigationControllerのpop方法
UINavigationControllerは画面の並びに順番があり、次画面に進む、前画面に戻るといった遷移を作りたいときに使います。UINavigationControllerクラスはviewControllersという配列のプロパティを持っていて、この配列に個々の画面を格納していきます。
次の画面に進むときにはこの配列に次画面のViewControllerを格納(push)、前画面に戻る時はこの配列から今表示している画面のViewControllerを削除(pop)することで画面遷移します。
pushは大体storyboardで指定するpushセグエを実行することで行いますが、pop処理はコードの中で書いてやらないといけないケースが多いのでないでしょうか。(という気が実際開発していてしました)
そのpopの書き方はいくつか方法があるようです。
//1画面前に戻る navController.popViewControllerAnimated(true) //特定の画面に戻る(2は指定したい画面によって変える) let backViewController = navController.viewControllers[2] navController.popToViewController(backViewController, animated: true) //指定した画面数前に戻る(2は戻りたい画面数によって変える) var viewControllers = navController.viewControllers viewControllers.removeLast(2) navController.setViewControllers(viewControllers, animated: true)