から更新された変数値にアクセスする私は、3つの異なるビューコントローラとのプロジェクトを持っている:別のビューコントローラ
のViewController(ここで、ユーザの入力値、これはある)、LoadingViewController(ロード画面)、およびAnswerViewController(私はしたいです最初のビューコントローラで更新された値の結果をロードする)ここで
はのViewControllerのコードです:あなたが見ることができるように、このビューコントローラに私が先頭に変数を作成しましたvar calculatedRatio: Double?
@IBOutlet weak var boysCountTextField: UITextField!
@IBOutlet weak var girlsCountTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func calculateButtonTapped(sender: UIButton) {
if boysCountTextField.text != "" && girlsCountTextField.text != "" {
calculateRatio()
self.performSegueWithIdentifier("loadingAnswer", sender: self)
}
}
func calculateRatio() {
let boysCount = Double(boysCountTextField.text!)!
let girlsCount = Double(girlsCountTextField.text!)!
let currentRatio = boysCount/girlsCount
calculatedRatio = currentRatio
print(calculatedRatio)
}
01と呼ばれるオプションのダブルである。同じビューコントローラーで、ボタンを押すと、calculateRatio()
と呼ばれる下部の機能が実行され、calculatedRatio
の値が更新されます。
私の質問はどのように私は別のビューコントローラ私は直接にsegueingておりません(AnswerViewController)でこの変数の新しい値にアクセスすることが可能です、ありますか?
私は既にAnswerViewController内にViewControllerのインスタンスを作成しようとしましたが、変数は関数で指定された新しい値ではなく、初期値(この場合はnil)でコピーされます。
委任を使用してみましたか? – MikeG