2010-02-26 85 views
1

当我收到此消息时,我刚刚完成了其中一个应用程序。我不能为我的生活找出什么是错的。由于未捕获的异常而终止应用程序//SIGABRT // C++

(gdb) continue 
2010-02-26 14:05:51.443 BrainTester[2638:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] was unable to load a nib named "SplitSecondViewController"' 
2010-02-26 14:05:51.452 BrainTester[2638:207] Stack: (
    861696817, 
    860329709, 
    861252493, 
    861252395, 
    835170725, 
    835170141, 
    835074651, 
    13515, 
    834774231, 
    834773467, 
    835014237, 
    835012689, 
    835011495, 
    861063661, 
    861449261, 
    861447005, 
    834770767, 
    834765939, 
    11025, 
    10920 
) 
terminate called after throwing an instance of 'NSException' 
Program r 

收到信号:“SIGABRT”。 (gdb)

如果有人能帮助,任何帮助表示赞赏。

+1

首先确保您的包中有SplitSecondViewController.n(x)ib文件。 – Vladimir 2010-02-26 14:18:42

+1

删除C++标记,这里不相关 – conorgriffin 2010-02-27 05:20:55

+0

你解决了你的问题吗?请标记正确的答案,将此帖标记为已回答。 – 2015-01-27 14:11:15

回答

0

你显然有一个NSInvalidArgumentException抛出并没有捕获,因此调用std :: terminate(),并结束程序。不熟悉iPhone SDK,我不能真正帮助更多。查阅API文档以查看它可能从哪里抛出。

如果我的Objective-C++语法阅读正确,错误消息暗示对象UIViewController无法执行带参数SplitSecondViewController的消息_loadViewFromNibNamed。

对不起,我不能帮助更多...

0

已SplitSecondViewController.nib被添加到项目,它是在一个正常的目录?

此外,这是一个Objective-C异常,而不是C++异常。

0

当您重命名nib文件但不通过项目传播名称更改时,可能会发生这种情况。自上次成功运行应用以来,您是否重命名了SplitSecondViewController?

或者,如果您在某个阶段删除了SplitSecondViewController,则可能仍会在项目的其他地方引用它。打开界面生成器并转到主窗口的连接检查器。如果您在某个阶段删除了SplitSecondViewController,那么请确保连接检查器中的连接已被删除。

0

看看在Xcode在 “目标” - > YourAppName->复制包资源

不存在XIB-文件存在?

0

我有同样的问题,马里奥的答案为我解决了它。我正在将iPhone应用程序转换为在手机和iPad上工作。出于某种原因,它没有将新的xib文件放入目标下的Copy Bundle资源中。一旦我通过从Resources-iPad目录下拖动XIB文件来添加它,它就修复了一切。

谢谢,马里奥!

相关问题