これを行う方法はたくさんあります。たとえば、デリゲートを使用してビューコントローラ間でデータを渡すことも、通知センターを使用することもできます。 私はあなたの質問から、セグを使用したいと思います。そのアプローチのためのソリューションは、以下である:「Satari」ビューコントローラで
(Iは、第三のビューコントローラを意味SatariViewControllerを言わせて)、いくつかの変数を定義する:最初のビューコントローラで
var test : String?
次のコードを追加します
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "segueName" {
let navViewController = segue.destination as! UISideMenuNavigationController
let satariVC = navViewController.viewControllers.first as! SatariViewController
satariVC. test = "Data from first view controller"
}
}
このコードでは、最初のコントローラから3番目のコントローラにデータを渡すことができます。しかし、私はより確実な解決策は代表者を使うことだと思います。
私は自分の質問を更新しました。あなたは代表者と一緒に例を挙げてください。 –
https://www.codebeaulieu.com/36/Passing-data-with-the-protocol-delegate-patternをご覧ください。 –