无法在捆绑NSBundle中找到名为“Main”的故事板?

时间:2015-02-27 04:22:28

标签: xcode localization storyboard main viewcontroller

在尝试本地化SpriteKit游戏时,我突然开始收到错误:

“无法在捆绑NSBundle中找到名为'Main'的故事板”

我没有使用故事板,我想我在第一次开始开发游戏时实际上删除了该文件。 “主故事板文件基本名称”设置为“主要”(之前设置为“有效”且没有故事板)。我删除了该条目,现在程序只执行AppDelegate文件并基本上停止。在它自动执行根视图控制器之前缺少什么,现在它没有?

我在app delegate中尝试了以下内容:

*self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
FirstViewController *First = = [[FirstViewController alloc]init];
[self.window setRootViewController: First];
[self.window makeKeyAndVisible];

但当它移动到FirstViewController时,它崩溃了:

SKView * skView = (SKView *)self.view;
skView.showsFPS = YES;

但是在我从不需要之前,首先要剪断代码以执行根视图控制器。什么可能出错的想法?这一切都始于模糊的本地化,清理,更改语言,删除Localizable.string文件等......

1 个答案:

答案 0 :(得分:1)

" ...清洁......"

SpriteKit应用程序模板包含一个Main.storyboard&用作GameScene加载的视图。您很可能将其移除并继续正常工作,直到稍后清理项目为止;至少我的经验是,在删除故事板或其他资源之后,你真的想要做一个干净的构建,立即找出你是否破坏了某些内容,因为它们似乎最终会在生成的捆绑中停留一段时间被删除后。

您当前的代码创建了FirstViewController,但是我无法看到您是否在init方法中正确处理了所有布局,但是由于您崩溃了,可能不是?

我喜欢故事板,所以如果我是你,我会创建一个新的spritekit游戏项目,这样你就可以从中获取Main.storyboard,但如果你真的宁愿修复你拥有的代码我我们可能需要看看FirstViewController.m

此外,当调试程序崩溃时,您在调试器中收到的消息可能也有助于获得更好的答案。