【iOS】画面を戻る(現在の画面を落とす)


 

こんにちはkussuueです。
 

iOS開発していて、色々画面を作っていてViewControllerもいろいろあって、、、という状態で前の画面に戻りたい場合の処理を備忘録がわりに書きます。
 

まあ基本的な実装方法ですが、いくつもの画面を跨いで前の画面に戻りたい、segueでやっちゃうと画面が積み重なってしまうし、そもそもいくつもの画面跨いで戻れるの?とか、作成している画面の遷移が複雑だからViewControllerを親子関係にしないといけないの?とか恥かしながら完全に迷ってしまいましたので備忘録がわりに記載します。
 
 

基本的な処理方法になりますが、この方法が結構何でも対応できるんだろうなと感じました。

 
 

1、storyboardで画面作る。
今回は2つ前の画面に戻るというのをやってみました。
ios_page_transition

ピンクの画面内の’Back to top’ボタンを押すとトップ画面まで戻りたいと思います。
 

 

2、トップ画面にバインドしているViewControllerに以下を記載します。

@IBAction func backToTop(segue: UIStoryboardSegue){} ←名前は何でもいいです。e.x.)backToTop

 
 

3、storyboardで設定します。
遷移前の画面、今回だとピンクの画面内のUIButtonをCtrl+ドラッグして’Exit’に引っ張っていくと先ほどViewControllerに設定した’backToTop’が表示されますので、選択します。
 
 

4、動作確認
これでピンク画面内のUIButtonをクリックするとトップ画面まで戻ってくれます。

 

 
 

あ〜よかった☆

kussuue