最近、View Controllerは、正確な名前のnibファイルを自動的にロードします。UIKit:nibファイルを自動的にロードするコントローラを表示します。
私は単に
[[[ViewController alloc] init] autorelease]
ようなビューコントローラを初期化することができ、ナビゲーションコントローラまたはそうにそれをプッシュするときに、ペン先は、私が今まで何もせずにロードされます。
これは、私のアプリでは1つのビューコントローラを除いて動作しますが、なぜそれが分かりません。彼らのnibsを自動的にロードするすべてのView ControllerはおそらくXcode 4で作成されていますが、動作しない唯一のコントローラはXcode 3で作成されたものです。隠されたスイッチはどこかにありますか?ペン先のファイル設定、ペン先、それを説明できるView Controllerのソースコードには何も見つかりませんでした。
これは問題を発見したようです:自動nib読み込みが動作しなかったビューコントローラは、Three20フレームワークのTTViewControllerのサブクラスでした。 TTViewControllerがloadViewメソッドをオーバーライドすると、自動的にnibローディングが停止するようです。 したがって、1つの解決策は、loadViewメソッドを自分でオーバーライドすることです。 - (void)loadView { [super loadView]; NSString * nibName = NSStringFromClass([self class]); [[NSBundle mainBundle] loadNibNamed:nibName所有者:自己オプション:nil]; } – Raphael