1

質問が示唆するように、セグエはどのように宛先コントローラーを作成しますか? 具体的には、どのメソッドが呼び出されますか? セグエが彼を作成するときに、ペン先から別のViewControllerを初期化したいと思います。どうすればそれを達成できますか?

どうもありがとう

4

1 に答える 1

4

短い答え:initWithCoder:が呼び出されます。

より長い答え(AppleのドキュメントからUIViewController):

アプリでストーリーボードを使用してビュー コントローラーとそれに関連付けられたビューを定義する場合、アプリはそのクラスのオブジェクトを直接初期化することはありません。代わりに、View Controller はストーリーボードによってインスタンス化されます。つまり、セグエがトリガーされたときに iOS によって自動的にインスタンス化されるか、アプリがストーリーボード オブジェクトの instantiateViewControllerWithIdentifier: メソッドを呼び出したときにプログラムによってインスタンス化されます。ストーリーボードからビュー コントローラーをインスタンス化する場合、iOS は代わりに initWithCoder: メソッドを呼び出して新しいビュー コントローラーを初期化します。iOS は、nibName プロパティを、ストーリーボード内に保存されている nib ファイルに自動的に設定します。

于 2012-05-15T21:19:40.363 に答える