2016-09-14 17 views
-1

私はこの記事の多くを読んでいますが、これは "prepareforsegue"という関数で呼び出されていますが、実装する場所やその他のものは分かりません私はする必要があります。私は4つのテキストフィールドを、別の後のコントローラから呼びたいと思っています。答えをありがとうございました。 :)swift(prepareforsegue)内の他のビューコントローラからテキストフィールドを呼び出す

答えて

0

prepareforsegueメソッド内の値を設定したり、テキストフィールドなどのコンセントにアクセスすることはできません。これは、prepareforsegueメソッドが「before」と呼ばれるため、宛先コントローラのアウトレットが設定されるためです。したがって、宛先フィールドの値を受け取る宛先コントローラに変数を作成し、宛先コントローラのviewDidLoadにそれをテキストフィールドに設定する必要があります。

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if let destinationViewController = segue.destinationViewController as? SecondViewController { 
     destinationViewController.valueForTextField = "Hi" 
    } 
} 

先コントローラで(私の場合SecondViewControllerある):

@IBOutlet weak var textField: UITextField! 
var valueForTextField: String? 
override func viewDidLoad() { 
    super.viewDidLoad() 
    textField.text = valueForTextField 
} 
prepareforsegue方法において

0

あなたのコードを投稿するのに役立ちます。 prepareForSegueインサイド

、使用してテキストフィールドを保持している先のViewControllerをつかむ:

let vc = segue.destinationViewController

、あなたの他のテキストフィールドのvc.textField1.text = "Your Text here" &繰り返します。

関連する問題