1つのストーリーボードファイル(FifthViewController.storyboard)にプッシュされたボタンから別のxib(WebViewController.xib)にViewControllerを読み込もうとした後、iOS5-6アプリがクラッシュします。正確なエラーメッセージ:Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "WebViewController" nib but the view outlet was not set.'
このエラーは通常、ビューアウトレットが接続されていない場合、またはViewControllerにクラスが割り当てられていない場合に表示されます。WebViewController.xibでは、ビュー(実際にはこれを切断することはできません)と私のWebビューを含め、すべてが接続されています。私のViewControllerのクラスはWebViewContrllerとして正しくラベル付けされています。
これが私のコードです:
WebViewController.h
@property (weak, nonatomic) IBOutlet UIWebView *webView;
@property (weak, nonatomic) NSURL *urlToLoad;
- (id)initWithURL:(NSURL *)url;
WebViewController.m
@synthesize webView, urlToLoad;
- (void)viewDidLoad {
[super viewDidLoad];
[webView loadRequest:[NSURLRequest requestWithURL:urlToLoad]];
}
- (id)initWithURL:(NSURL *)url {
[self setUrlToLoad:url];
return self;
}
FifthViewController.m-これは、WebViewControllerを呼び出すボタンが配置されているVCです。
- (IBAction)pushedArts:(id)sender {
WebViewController *wvc = [[WebViewController alloc] initWithURL:[NSURL URLWithString:@"http://www.yahoo.com"]];
[self presentModalViewController:wvc animated:YES];
}
画像は、WebViewController.xibとそのクラス内の接続を示しています。任意の洞察をいただければ幸いです。ありがとうございました。