#author("2016-06-19T14:06:57+09:00","default:wikiwriter","wikiwriter")
#author("2016-11-30T14:58:04+09:00","default:wikiwriter","wikiwriter")
[[Storyboard]]

&tag(Storyboard/セグエ);
*目次 [#u902cf12]
#contents
*関連ページ [#k8ea6011]
*参考情報 [#q1ef1777]
-[[segueについて調査 (Storyboard) - しめ鯖日記:http://llcc.hatenablog.com/entry/2015/05/27/003110]]

*画面遷移を簡単に行うためのもの [#vdc87be9]

**アクションセグエ [#y1ecc81c]
-遷移元のボタンをControl-ドラッグして遷移先にドロップ。
-Show / Show Detail…などを選べばボタンを押したタイミングで自動的に遷移できる。

**マニュアルセグエ [#m7259d80]
-遷移元のView Controllerを右クリック。manualセグエをドラッグして遷移先にドロップ。
-何かのイベント発生時に以下のメソッドを呼び出して遷移する。SegueIDはInterface Builderで設定する。
#pre{{
self.performSegueWithIdentifier("SegueId", sender: self)
}}


**遷移先から戻る [#pe2fcfdb]
-遷移元のView Controllerに以下のメソッドを追加
#pre{{
@IBAction func backWithSegue(let segue: UIStoryboardSegue) {
    NSLog("back")
}
}}
-例えば遷移先から「戻る」ボタンを教えて戻りたい場合、IB上でボタンをControl-ドラッグしてIBのExitに接続。backWithSegueを選ぶ。

-またはViewControllerを自分自身のExitに接続して名前をつけ、手動で呼び出すこともできる。
**テーブルビューで遷移する [#mb58605b]
***行のタップで次のビューコントローラーを呼び出す [#mbcaba8c]
-ストーリーボードのビューコントローラー(画面上部の3つのアイコンの左端)を遷移先のビューコントローラーにドロップ。
-セグエに名前をつけておく。
-行が押されたとき以下のように呼び出して遷移する。
#pre{{
    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        self.performSegueWithIdentifier("simple", sender: self)
    }
}}


***呼び出したビューコントローラーから戻る [#ldb3839b]
-呼び出し先のビューコントローラーでビューコントローラー(画面上部の3つのアイコンの左端)をExit(右端)にドロップ。呼び出し元のbackWithSegue的なメソッドを設定する。
#pre{{
    @IBAction func backWithSegue(let segue: UIStoryboardSegue) {
        NSLog("back")
    }
}}
-このセグエに適当な識別子を割り振る(IBでUnwind segueを選択して)。
-テーブルビューでタップされたタイミングで戻りたい場合以下のように戻る。
#pre{{
    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        self.performSegueWithIdentifier("back", sender: self)
    }
}}

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS