从XIB Viewcontroller中的segmentcontrol到Storyboard Viewcontroller

时间:2013-01-18 23:59:19

标签: xib segue

我在xib中创建的viewcontroller(UISegmentController.h,UISegmentController.m,UISegmentController.xib)中有一个段控件。现在我试图segue(理想推)到我创建的Storyboard viewcontroller(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 viewcontroller,它工作正常。但现在没有stroryboard viewcontroller。 但是,我收到如下例外情况:

因未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'无法在bundle中加载NIB:'NSBundle(loaded)',名称为'ChartViewController'' * 第一次抛出调用堆栈: (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调用抛出异常 (lldb)

你可以帮忙吗?

非常感谢!

1 个答案:

答案 0 :(得分:0)

我终于想出了更多的研究。首先,需要在他们试图转换到的故事板中实例化控制器(ChartViewcontroller)。然后,您需要将一个故事板ID名称(ChartID)提供给控制器,该控制器可在选择控制器后在文件检查器下找到。最后执行推送到新控制器。

希望这有助于某人。

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

//将所选对象传递给新视图控制器。 [self.navigationController pushViewController:chartpage animated:YES];

相关问题