Ios 使用Sprite工具包和swift关联.sks和.swift文件

Ios 使用Sprite工具包和swift关联.sks和.swift文件,ios,swift,sprite-kit,skspritenode,skscene,Ios,Swift,Sprite Kit,Skspritenode,Skscene,下面的图片是我的ArcherySceneSKS.sks文件和我的ArcheryScene.swift文件 在底部图片ArcheryScene.swift中,我用红色圈出了用于从ArcherySceneSKS.sks文件访问球的代码。在这个圆圈中,将编译行:ballChild?.runActionmove,但当我运行游戏时,球不会发生任何变化。为什么会这样 还有,我说的是printlnballChild,你可以看到它把所有的东西都打印出来了。所以我知道变量ballChild确实包含.sks文件中的

下面的图片是我的ArcherySceneSKS.sks文件和我的ArcheryScene.swift文件

在底部图片ArcheryScene.swift中,我用红色圈出了用于从ArcherySceneSKS.sks文件访问球的代码。在这个圆圈中,将编译行:ballChild?.runActionmove,但当我运行游戏时,球不会发生任何变化。为什么会这样

还有,我说的是printlnballChild,你可以看到它把所有的东西都打印出来了。所以我知道变量ballChild确实包含.sks文件中的球


当您写下以下行时:

let scene = SKScene(fileNamed: "ArcherySceneSKS")
您正在创建一个新场景。因此,您正在访问的ballChild是另一个,而不是您的self ArcheryScene类中的ballChild

如果您正确地实例化了ArcheryScene类,那么您不能通过这样做来访问ball吗

let ballChild = self.childNodeWithName("Ball")
如果有帮助,请告诉我。

使用

let scene = ArcheryScene(fileNamed: "ArcherySceneSKS")

然后实例化的对象将是您想要的子类

可能重复的我知道这是同一个问题这对我来说只是一个更好的提问方式,o第一次提问时每个人都很困惑您可以随时编辑您的原始问题。我已经回答了这里和那里。别忘了,你可以编辑你的第一篇文章来添加/更正信息,例如。@lchamp-你不应该回答重复的内容-而是投票/标记它以便结束