未経験がswiftでiOSアプリ開発に挑戦する「画面遷移」
Kaichiと申します。
未経験からxcode・swiftでiOSアプリ開発の学習をしています。
学習の記録をアウトプットする記事になります。
今回は「画面遷移」についてアウトプットしていきます。
遷移先のViewControllerを用意
まず遷移先の画面となるViewControllerを用意しなければなりません。 新しくViewControllerを作るには、UIパーツの「ViewController」を選択します。
新しく配置したViewControllerはもともとあったViewControllerと区別したいので、クラス名で分けましょう。 新しく配置したViewControllerをクリックして、右上から画像の通りのアイコンを選択し、class名を入力するところに「NextViewController」と入力します。そうするとこのViewControllerのクラス名はNextViewControllerとなります。
これでViewControllerの区別ができました。
遷移前と遷移先のViewControlerをつなげる
もともとあったViewControllerからアクションを起こして、新しく用意したViewControllerに遷移するようにします。 ViewControllerの上側一番左のアイコンをクリックし、controlを押しながらドラッグ&ドロップでNextViewControllerのビュー上に引っ張ってきます。
すると2つのViewの間に矢印が出現します。この矢印をSegue(セグエ)といいます。
このSegueもコード上で使えるようにしたいので、SegueにIDをふります。 画像では「next」というIDをふっています。
プログラムの記述
最初のViewControllerでボタンを押した時にNextViewControllerに遷移するという処理にしたいので ボタンを用意し、コードに書いていきます。
このfunc buttonの中に画面遷移の処理を書いていきます。
画面遷移の処理はperformSegueというものを使って下記のように記述します。
@IBAction func button(_ sender: Any) { performSegue(withIdentifier: "next", sender: nil) }
withidentiferには先ほど設定したID「next」とします。これによりこのperformSegueの処理は、先ほど設定したnextというIDのSegueを紐づきますよということになります。
これでボタンをタップすると画面遷移できるようになりました。
画面遷移のやり方は他にも色々あるとのことなので、他のやり方も試してみたいと思います。