2017-08-15 8 views
0

prepareForSegue()メソッドは、SecondViewControllerのオブジェクト型を定義します。 次に、SecondViewControllerクラスのデータメンバーにアクセスし、このデータメンバーに「New View Controller」文字列を割り当てます。すべてのことはprepareForSegue()メソッドで実行されます。SecondForControllerのprepareForSegue()およびviewDidLoad()

SecondViewControllerクラスのviewDidLoad()メソッドは、MainViewControllerクラスのprepareForSegue()メソッドの後に呼び出されますか?

prepareForSegue()は、String型のSecondViewControllerクラスで宣言されたデータメンバーを初期化するため、この質問をしました。上記で尋ねた内容が真であれば、この文字列メンバーをSecondViewControllerクラスのlabel.textに割り当てることができます。

+1

はい、あなたはそれを行うことができます。 View did loadは、2番目のView Controllerがロードを開始した後に呼び出されます。 –

+0

これは、独自のプロパティ(データメンバーまたはデータフィールド)が初期化された後で、ビューコントローラの読み込みが実行されることを意味します。 – Goktug

+0

これはあなたにとって有益な場合は、 'init'関数を使ってプロパティを初期化することができます。これは、ビューをロードする前に必ず呼び出されます。それ以外の場合は、 'prepareForSegue()'ファンドからデータを設定します。これも正常に機能します(viewDidLoadの前にもそうです)。 – Muli

答えて

0

prepareForSegueSecondViewControllerにアクセスすると、実際にはviewDidLoadがトリガーされます。

あなたはそれについて考えるなら、それにアクセスするために読み込まれたビューを持っている必要があります。

他のビューのライフサイクルメソッドをviewWillAppearのように使用することも、カスタムinitを作成することもできます。

関連する問題