0

次のようなnibファイルをロードしようとしています:

[[NSBundle mainBundle] loadNibNamed:@"PhotoViewController" owner:self options:nil];

しかし、それはアプリをクラッシュさせます

4

2 に答える 2

1
[[NSBundle mainBundle] loadNibNamed:@"viewNib" owner:self options:nil];

通常は、NIB でファイルの所有者として設定したビュー コントローラーからこれを行います。そうすれば、NIB ファイルをロードすると自動的に接続される View Controller でビューのアウトレットを宣言できます。

于 2012-11-27T19:23:28.940 に答える
1

ビュー コントローラーをプログラムで作成している場合は、initWithNibName:bundle: ビュー コントローラー メソッドを使用できます。

いえ

[[myViewcontroller alloc] initWithNibName:@"myNib" bundle:nil];

ストーリーボード経由でビュー コントローラーに移行していて、ストーリーボードに特定の nib ファイルからそのビュー コントローラーをロードさせたい場合は、次のようにします。

  1. ストーリーボードで、View Controller のビューを削除します
  2. nib ファイルに、ストーリーボード ビュー コントローラーのクラスと同じ名前を付けます。

この同じ質問もここで回答されています: XCode ストーリーボードを使用して、設計に XIB を使用するビュー コントローラーをインスタンス化する

于 2012-11-27T20:52:55.547 に答える