iOS

Swift3 コードでの画面遷移

投稿日:2017年5月1日 更新日:

はじめに

こんにちは、はじめです。

ようやくswift3のコードを書きながらの勉強を開始しました。

まだまだかなりの初心者なので最近学んだコードでの画面遷移の書き方を復習もかねて

記事にしてみようと思います。

 

環境

・Swift 3.1

・Xcode 8.3.2

 

performSegue

事前準備

まずは下の画像のように2つのViewControllerを用意します。

 

1.ViewControllerのファイル名、class名を「FirstViewController」に変更

2.storyboardにてViewControllerSceneのCustomClassに「FirstViewController」を設定

3.SecondViewController.swiftファイルを作成し、FirstViewController.swiftの中身をコピペ

4.SecondViewController.swiftのclass名を「SecondViewController」に変更

5.storyboardにViewControllerを追加して、CustomClassnに「SecondViewController」を設定

6.遷移したことがわかるようにSecondViewControllerにLabelを追加し、「SecondView」と記述しておく

 

遷移先を示すSegueを作成

FirstViewControllerからSecondViewControllerへのSegueを作成し、
identifierに「toSecondViewSegue」と登録

 

遷移させるイベントを作成

1.FirstViewControllerにButtonを追加しテキストを「NEXT PAGE」に変更
2.controlを押しながら、buttonからFirstViewController.swiftにドラッグ&ドロップ
3.tapNextPageButtonというactionメソッドを作成

 

画面遷移させる

tapNextPageButton()に以下を記述

 

以上で「NEXT PAGE」のボタンを押すとSecondViewに遷移させることができます。

 

prepare

事前準備

次に遷移先に何か値を渡す方法としてprepareを使って見たいと思います。

事前準備としてはperformSegueの時と同様なので省略します。

 

画面遷移を作成

1.FirstViewControllerにbuttonを追加

2.追加したbuttonからSecondViewControllerへのsegueを作成

3.作成したSegueのidentifierに「toSecondViewSegue」と登録

 

遷移先に値を受け取る入れ物を用意

1.遷移元から渡される値を受け取るためSecondViewControllerのclass内に以下を追加

2.SecondViewControllerにあるLabelを「myLabel」という名前でoutlet接続する

3.値を受け取っていることがわかるように以下のようにする

 

画面遷移 + 遷移先に値を渡す

FirstViewControllerに以下を追加

 

上のコードで

1.画面遷移が行われる前にsegueのidentifierが”toSecondViewSegue”かどうかを確認

2.”toSecondViewSegue”だった場合SecondViewControllerのlabelTextに”次の画面です”と定義

という流れで処理を行った後に画面遷移が行われます。

 

さいごに

performSegueとprepareを組み合わせたものに関しては

もう少し理解を深めた上で書いた方が良いと思いましたので次回また記述してみようと思いました。

ピッカービューもまだ使用したことがないので、今後記事にしてみようと思っております。

page_footer_300rect




page_footer_300rect




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

swift

[Swift3] ナビゲーションバーとステータスバーの色変更

1 はじめに1.1 前提条件2 ナビゲーションアイテムの色変更3 ナビゲーションバーの色変更4 ナビゲーションタイトルの色変更5 ステータスバーの色変更6 さいごに はじめに どうも、はじめです。 今 ...

swift

[Swift3] コードで動的にオートレイアウトを変更する

1 はじめに1.1 前提条件2 事前準備3 1.NSLayoutConstraintのActiveを切り替える4 2.NSLayoutConstraintのActiveを切り替える(複数同時)5 3. ...

swift

[Swift]UITableViewのカスタムセルをStoryboadで

1 はじめに1.1 前提条件2 実装2.1 Storyboadの準備2.2 UITableViewCellクラスの準備2.3 カスタムセルの表示3 さいごに はじめに こんにちは、nukkyです。 以 ...

swift

iOSでライブラリFSCalendarをつかって簡単にカレンダー表示

1 はじめに2 準備3 実装3.1 Storyboard3.2 コード3.3 タップの取得4 さいごに はじめに こんにちは、nukkkyです。 ツール系アプリ開発時にカレンダー表示を よく使うと思い ...

swift

[Swift]タブの切り替え時にアニメーションが簡単に実装できる「TransitionableTab」

1 はじめに2 準備3 実装4 さいごに はじめに こんにちは、nukkyです。 今回は、UITabBarControllerの切り替え時にアニメーションを実装できるライブラリ「Transitiona ...

フォロー

follow us in feedly

AppLink

英語

page_side_300rect

2017年5月
« 4月 6月 »
 123456
78910111213
14151617181920
21222324252627
28293031 

アプリ情報

目標を達成したい方を応援する、TODOアプリもリリースしております。 下記のアイコンから無料でダウンロードできます。

Web版MyCoach

私たちはより広い方にコーチングを知ってもらいたいと考えています。 下記のサイトにて、コーチの方々を紹介しておりますので、よろしければご覧ください。