【Swift】値を渡しながら画面遷移する
Swiftで値を渡しながら画面遷移する方法について書きます。
かなり簡単にかけます。
segueにIDをつけておきます。
今回はNextと設定
推移元のcontrollerにprepareメソッドをoverride
これが画面推移前に呼ばれるメソッドなので、値を渡したい時はここでセットしていきます。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { //上記でセットしたidentifierのsegueであれば、 //推移先のcontrollerの変数(ここではUIImage)に推移元のcontrollerのUIImageをセット if segue.identifier == "next" { let subVC:EditViewController = segue.destination as! EditViewController subVC.willEdit = imageView.image! } }
これで値を渡すことができました。
画面推移は以下
//以下を推移したいタイミング(例えばボタンのタップ時のメソッドの中で呼ぶ) performSegue(withIdentifier: "next", sender: nil)
以上です。かなり簡単ですね。