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を組み合わせたものに関しては

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

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

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

swift

端末のモデル名やサイズを簡単に取得できるライブラリ「Device」

1 はじめに2 準備3 試してみる3.1 端末モデル名3.2 画面サイズ3.3 端末の種類4 さいごに はじめに こんにちは、nukkyです。 今回は端末のサイズやモデル名などを 簡単に取得できるライ ...

【Swift】WKWebViewでタップしたURLを取得する。

1 はじめに2 WKWebViewについて3 WKWebViewの基本実装4 ナビゲーションにタイトルを追加5 ロングタップの禁止6 特定のリンクの場合はブラウザを起動して表示7 さいごに はじめに ...

swift

[Swift]動画広告を最後まで見たら何かするアレをAPPLOVINでやってみた

1 はじめに1.1 前提条件2 準備3 実装3.1 Xcodeの設定3.2 広告の再生4 テスト設定とかアプリ管理5 さいごに はじめに こんにちは、nukkyです。 今回はタイトルの通り、アプリでよ ...

swift

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

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

swift

【Swift】switch文でタプルを使う

1 はじめに2 タプルとは3 タプルを使うswitch文について4 テストコード5 さいごに はじめに こんにちはsuzukiです。本日で投稿が2回目となります。 今後ともよろしくお願い致します。 最 ...

フォロー

blog-page_side_responsive

2017年5月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。