2017-08-20 5 views
0

変数をあるView Controllerから別のView Controllerに渡したいとします。 First View Controllerはこのように見え、segueが正しくトリガされ、新しいView Controllerが表示されます。次のビューコントローラ(TimerViewController)で変数を次のView Controllerに渡します

@IBAction func testButton(_ sender: Any) { 

    let timerVC = TimerViewController() 

    timerVC.secondsPassed = textfield_seconds.text! 

    navigationController?.pushViewController(timerVC, animated: true) 

} 

私はちょうどコンソールに値を印刷したいと私が受け取るすべて」である

var secondsPassed:String! 

とのviewDidLoadにクラスヘッダで変数を宣言しましたnil '。

私はさまざまなチュートリアルを見てきましたが、これを正しく動作させるには正しい答えが見つからないようです。

手掛かりのある人は誰ですか?事前に

おかげで...

+0

ボタンにセグが接続されていますか?その場合、私は 'IBAction'が実際に動いているとは思わない。すでに 'pushViewController'を呼び出しているので、segueを削除してください。 – Sweeper

+0

はい、接続されたセグがありました。私はそれを削除しましたが、今は何も起こりません。新しいビューコントローラは表示されず、ボタンだけが押されたことを示しています。私はまだ混乱している。この単純なことはどうやってとても難しいのでしょうか? – boehmatron

+0

ああ、あなたはUINavigationControllerを埋め込んでいませんよね?今すぐ回答を投稿する – Sweeper

答えて

1

すでに、あなたはコントローラを提示し、この行を削除することができセグエを使用している場合は、(あなたがとにかくnavigationControllerを持っていないように見えます):

navigationController?.pushViewController(timerVC, animated: true) 

セグを使用して別のVCにデータを渡す正しい方法は次のとおりです。

関連する問題