ストーリーボードを XIB に置き換えるにはどうすればよいですか?
ビューとそのコントローラーを動的に作成しようとしたときに、新しいストーリーボードのすべての利点を失いました。ここで、プロジェクトから削除しようとすると、独自のコントローラーで新しい XIB を作成し、プロジェクト設定で置き換えました
。アプリケーションを実行しようとすると、クラッシュし、ログに次のように表示されます。
2012-04-08 14:50:16.567 Bazaart[11340:15203] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIApplication 0x8c15c20> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key view.'
これが次のコードです: UIRootWindow:
#import <UIKit/UIKit.h>
@interface UIRootWindow : UIViewController
@end
そしてそれに対応する実装:
#import "UIRootWindow.h"
@implementation UIRootWindow
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
}
- (void)viewDidUnload {
[super viewDidUnload];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return YES;
}
@end
編集:
フィリップが提案したウィンドウを作成しました(以下を参照)。しかし...私のやり方は最善ではないようです。私はそれを正しくやっていますか?
UIRootWindow *wnd = [[UIRootWindow alloc] init];
[wnd view];
[self setWindow:wnd.window];