web-dev-qa-db-ja.com

ストーリーボードの「initwithNibName」を変更するにはどうすればよいですか?

Xcode 4.2のストーリーボードで以下のコードを変更したい。

UIViewController * example     = [[ExampleViewController alloc] initWithNibName:@"ExampleViewController" bundle:nil];

これで、ExampleViewController.xibファイルが存在します。ストーリーボードで作りたいです。私を助けてください。 (私は英語が苦手です。ごめんなさい)

55
jokor7

UIStoryboard クラスはあなたの友達です:

UIStoryboard* sb = [UIStoryboard storyboardWithName:@"mystoryboard"
                                              bundle:nil];
UIViewController* vc = [sb instantiateViewControllerWithIdentifier:@"ExampleViewController"];
132
  • まだ独自のxibファイルにある場合は、何も変更しません。
  • すべてをストーリーボードに移動した場合、セグエを使用してView Controller間をリンクするため、これを行う必要はほとんどありません。

上記のどちらにも当てはまらない場合、つまり、View Controllerはストーリーボード上にあるがセグエがそれに接続しない場合、UIStoryboardのinstantiateViewControllerWithIdentifier:ドキュメント で説明されているメソッド。これが機能するには、ストーリーボードで識別子を設定する必要があります。

8
jrturton