如何获取标签并检查更新中的对象?

时间:2013-12-24 10:56:15

标签: box2d cocos2d-x

我想删除精灵或b2body。之后,我将检查对象是否可用。

我有以下编码:

我已使用标记删除了该对象:

 this->removeChildByTag(100,true)      //this is not in update function

在更新功能中:

 if(node->getTag()==100)
 {
      CCLog("node is available");
 }

这里我在node-> getTag()行中遇到问题“EXC_BAD_ACCESS(code = 2,address = 0x84)”。

这段代码有什么问题吗?

是否有其他方法可以检查节点或对象?

提前致谢。

1 个答案:

答案 0 :(得分:0)

我的猜测是,之前你曾打电话过:

addChild(node);

这将节点添加到容器(您的CCScene派生类)。当你打电话

this->removeChildByTag(100,true);

“节点”实例被销毁。

更好的检查将是:

CCSprite* pNode = (CCSprite*)getChildByTag(100);
if(pNode == NULL)
{   // This node is available
    // Do something here...
}