适用于模拟器,但不适用于Iphone

时间:2012-09-05 22:59:52

标签: iphone xcode

我开发了一个在模拟器上运行良好的应用程序,但在iPhone上崩溃了。 实际上,应用程序在初始化时不会崩溃,但是当我更改为另一个视图时。 我意识到,当我更改为没有Segue的视图时,应用程序崩溃了。例如,执行

[self.navigationController pushViewController:detailViewController animated:YES]; 

崩溃是:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'MainStoryBoard' in bundle NSBundle </var/mobile/Applications/EE37B62E-E345-4F69-A6F0-3F56CB23F7BF/tableview.app> (loaded)'

第一次抛出调用堆栈:

(0x357d788f 0x37b7e259 0x335835fb 0x1ccad 0x332bd93d 0x33337627 0x352f1933 0x357aba33 0x357ab699 0x357aa26f 0x3572d4a5 0x3572d36d 0x373c9439 0x33239cd5 0x9a25 0x99c0)

terminate called throwing an exception(lldb)

1 个答案:

答案 0 :(得分:3)

很难确定,但文件名为'MainStoryBoard'(使用大写字母B)的事实使得这听起来像是一个区分大小写的问题。 Mac(以及模拟器)不区分大小写,但iPhone本身就是这样,意味着不正确的区分大小写运行正常,直到您将其放在实际设备上。在MainStoryboard上运行项目范围的搜索,并确保文件名及其在代码中对它的任何引用都完美匹配。