3

ですから、私はこのストーリーボードのコンセプトにかなり慣れていません。ビューニブをストーリーボードにドロップインし、それぞれが所有するUIViewControllerサブクラスに対応しているので、次のコードを使用してニブファイルをロードしてみました。

TestViewController *vc = [[TestViewController alloc] initWithNibName:@"TestViewController" bundle:nil];
    [self.view setBackgroundColor:[UIColor blueColor]];
    [self.view setFrame:CGRectMake(0, self.profilePicture_.frameHeight + self.profilePicture_.frameY + 10, self.scrollView_.frameWidth, 100)];
    [self.view addSubview:vc.view];

ただし、次のエラーが発生します。

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle </Users/aditya15417/Library/Application Support/iPhone Simulator/5.1/Applications/64E6CEC9-E6DC-4AF5-BF16-11BFB6415BDC/Pulse.app> (loaded)' with name 'TestViewController''

ですから、問題は、ストーリーボードにペン先がある場合、initWithNibNameを使用できないということです。方法がある場合、どうすればよいですか?

4

4 に答える 4

0

PNRNewsfeedViewControllerをTestViewControllerとしてロードするのはなぜですか?TestViewControllerはPNRNewsfeedViewControllerの基本クラスですか?ペン先で、ファイルの所有者カスタムクラスがPNRNewsfeedViewControllerに設定されていることを確認してから、ニュースフィードビューコントローラーを割り当てます。

PNRNewsfeedViewController *vc = [[PNRNewsfeedViewController alloc] initWithNibName:@"PNRNewsfeedViewController" bundle:nil];
// ...
于 2012-06-04T17:46:39.187 に答える
0

これは私が行う方法です:

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]];
于 2014-04-07T20:33:58.193 に答える
0

ストーリーボードを使用する場合、個々の nib を直接使用せず、View Controller を自分でインスタンス化することもありません。ドキュメント で説明されているように、このクラスを使用してUIStoryboard、ストーリーボードからビュー コントローラーをインスタンス化できます。

于 2012-06-04T17:54:19.497 に答える