一个基本问题,我只是想将AppDelegate.m中的runWithScene:方法更改为[GameScene node]。我创建了GameScene类,并在其上创建了我的GameLayer类的实例var,我发现了这个错误,这很烦人:
Undefined symbols:
"_OBJC_CLASS_$_GameLayer", referenced from:
objc-class-ref-to-GameLayer in GameScene.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
这是我的GameScene代码:
GameLayer *GameLayer;
GameLayer = [GameLayer node];
任何帮助表示感谢。
答案 0 :(得分:1)
确保您的GameLayer类包含在您的目标中。显示实用程序(右侧,顶部,“查看”按钮)。之后,单击GameLayer.m模块上的项目导航器。目标成员资格显示在实用程序中。如果没有在那里单击目标,则GameLayer类不会被编译(即没有错误),因此链接器找不到对象模块。
答案 1 :(得分:0)
好像你还没有导入GameLayer
类。在实现的顶部,在import语句旁边添加:
#import "GameLayer.h"
更新:
好的,我想我知道发生了什么事。你必须编译你的来源。转到项目设置然后转到项目目标,然后转到Build Phases,最后将GameLayer添加到下拉列表“Compile Sources”。