実現したいこと
遷移先の画面Bで変更した値を、画面Aに戻った時にも使えるように更新したいです。
前提・問題
ViewController.swift
, // メインの画面
SettingViewController.swift
, // 設定画面
GetData.swift
// 主にデータと、データの処理を行うファイル
という3つのファイルがあります。SettingViewController.swift
のsteperで変数aの値を変更し、その後、変数aを変更後の値として使い続けたいですが、最初に初期化した値のまま変わらず、更新されません。
GetData.swift
swift
1struct GetData { 2 var a: Int = 0 3}
SettingViewController.swift
swift
1@IBAction func workTimeSteperPressed(_ sender: UIStepper) { 2 label.text = String(format: "%.0f", sender.value) 3 changeA = Int(sender.value) 4}
試したこと
SettingViewController.swiftに以下のコードを追加してみましたがダメでした。
swift
1override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 2 if segue.identifier == "Identifier" { 3 let destinationVC = segue.destination as! ViewController 4 destinationVC.getData.workTime = changeA 5 } 6}
※実際のコードをかなり簡略化して記載してあるので、何か不足してる部分があれば教えてください
回答2件
あなたの回答
tips
プレビュー