Spritekit在SKSpriteNode子类中获取sprite场景的最佳方法

时间:2014-07-27 22:55:04

标签: ios xcode swift sprite-kit

我是SKSpritenode的子类,需要引用sprite的场景。有没有办法检测精灵何时被添加到场景中。

let gameScene = self.scene as GameScene

在init中执行此操作会抛出可选错误,因为我的sprite已经实例化但未添加到场景中。如何判断我的精灵何时被添加到场景中以便我可以设置属性?

2 个答案:

答案 0 :(得分:1)

通常我创建addToNode:(SKNode *)parentNode方法来处理:

- (void)addtoNode:(SKNode *)parentNode {
     [parentNode addChild:self];
     // Do what you need here
}

答案 1 :(得分:0)

只需使用警卫

guard let scene = self.scene as? GameScene
else
{
    return
}
//Everything beyond here is safe to use scene