0

xibで作成されたviewcontroller(UISegmentController.h、UISegmentController.m、UISegmentController.xib)にセグメントコントロールがあります。今、作成した Storyboard ビューコントローラー (ChartviewController.h、ChartviewController.m) にセグエ (理想的にはプッシュ) しようとしています。この Viewcontroller は画像を保持します。私は以下のようにこのプッシュを実行しようとしました:

-(IBAction) segmentedControlIndexChanged;
{

//some code
ChartViewController *chartviewpage = [[ChartViewController alloc] initWithNibName:@"ChartViewController" bundle:nil];
[self.navigationController pushViewController:chartviewpage animated:YES];
//some code
}

私はこのコードを別の xib ビューコントローラーに実装していましたが、うまくいきました。しかし、今ではストーリーボードビューコントローラーではありません。ただし、次のように例外を受け取ります。

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle (loaded)' with name 'ChartViewController'' * First throw call stack: (0x15e6012 0x11b3e7e 0x15e5deb 0x53ffac 0x404e37 0x405418 0x405648 0x405882 0x405b2a 0x41cef5 0x41cfdb 0x41d286 0x41d381 0x41deab 0x41e4a3 0x41e098 0x4048 0x11c7705 0x327920 0x3278b8 0x3e8671 0x3e8bcf 0x3e86a6 0x43d597 0x43f83b 0x35716d 0x357552 0x3353aa 0x326cf8 0x22d1df9 0x22d1ad0 0x155bbf5 0x155b962 0x158cbb6 0x158bf44 0x158be1b 0x22d07e3 0x22d0668 0x32465c 0x1d0d 0x1c35) libc++abi.dylib: terminate called throwing an exception (lldb)

お願いできますか?

どうもありがとう!

4

1 に答える 1

0

私は最終的にそれをもう少し研究していることに気づきました。最初に、遷移先のストーリーボードでコントローラー (ChartViewcontroller) をインスタンス化する必要があります。次に、コントローラーを選択した後、ファイル インスペクターの下にあるコントローラーにストーリーボード ID 名 (ChartID) を指定する必要があります。最後に、新しいコントローラーへのプッシュを実行します。

これが誰かに役立つことを願っています。

UIStoryboard * myStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; ChartViewController *chartpage = [myStoryboard instantiateViewControllerWithIdentifier:@"ChartID"];

// 選択したオブジェクトを新しいビュー コントローラーに渡します。[self.navigationController pushViewController:chartpage animation:YES];

于 2013-01-19T22:08:22.210 に答える