ストーリーボードは利用せず、コードのみで実装しております。
やりたいこと
タイトル通りなのですが、遷移前のUIViewControllerから遷移後のUIViewControllerに値の受け渡しをして、遷移後のlabelに値を表示させたいです。
#ViewController.swift #遷移前の画面 import UIKit class ViewController: UIViewController { var count = 0 let btn: UIButton = { let button = UIButton.init() button.backgroundColor = .blue button.layer.cornerRadius = 10.0 button.setTitle("加算ボタン", for: .normal) button.titleLabel?.adjustsFontSizeToFitWidth = true button.titleLabel?.minimumScaleFactor = 2 return button }() override func viewDidLoad() { super.viewDidLoad() view.backgroundColor = .orange view.addSubview(btn) btn.anchor(top: view.topAnchor, left: view.leftAnchor, bottom: view.bottomAnchor, right: view.rightAnchor, paddingTop: 300, paddingLeft: 50, paddingBottom: 300, paddingRight: 50, width: 100, height: 100) btn.addTarget(self, action: #selector(self.nextview), for: .touchUpInside) } /// 問題の箇所 @objc func nextview() { count = count + 1 label.text = String(count) let nextView = NextViewController() if count == 10 { performSegue(withIdentifier: ここのIDが指定できない, sender: nil) nextView.count2 = count } } override func prepare(for segue: UIStoryboardSegue, sender: Any?) { let nextVC = segue.description as! NextViewController nextVC.count2 = count } }
#NextViewController #遷移後 import UIKit var count2 = 0 class NextViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() view.backgroundColor = .blue print(count2) } }
ViewController.swiftコード内の「問題の箇所」で、performSegueを設定する際の、ストーリーボードのIDをコードで付与する方法がわかりません。
やりたいことは、画面遷移時の値の受け渡しなので、performSegueにこだわっておりませんが、Udemyでやっていて、次からの動画でストーリーボードのIDを利用しているかもしれまえんので、できれば、ストーリーボードのIDをコードで付けたいです。
検索してもよくわかんない状態です。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/30 08:59
2020/07/30 09:02
2020/11/07 11:45