精灵可以知道它何时在现场?

时间:2014-03-16 20:46:30

标签: ios iphone ipad sprite-kit

我正在继承SKSpriteNode类以在自定义精灵上使用。我想尽可能保持一切自足。

有没有办法让SKSpriteNode知道它何时在场景中使用?我的意思是,假设另一个班级做到了这一点:

MySprite *sprite = [[MySprite alloc] init];

以及之后的年龄

[self addChild:sprite];

当精灵被添加为某个场景或其他节点的子节点时,精灵可以自己知道吗?

1 个答案:

答案 0 :(得分:1)

SKNode有一个名为scene的属性。如果此属性返回nil,则表示它不在任何场景中。您可以执行以下操作来检查。

if(!MyNode.scene){
    //Do something
}

您也可以在SKNode Doc上查看。 https://developer.apple.com/library/ios/documentation/SpriteKit/Reference/SKNode_Ref/Reference/Reference.html