我试图检查是否有一个对象的实例在屏幕上,如果有 - 删除它。代码如下 -删除对象的实例如果它存在于舞台上
if (gracetarget.parent)
{
gracetarget.removeEventListener(Event.ENTER_FRAME, gracetarget.graceListener);
gracetarget.parent.removeChild(gracetarget);
}
else if (springtarget.parent)
{
springtarget.removeEventListener(Event.ENTER_FRAME, springtarget.springListener);
springtarget.parent.removeChild(springtarget);
}
我碰到下面的错误 - 类型错误:错误#1009:无法访问空对象引用的属性或方法。
我想这是因为我试图删除一个不存在的对象,但肯定IF语句只应该在对象存在时才运行?
这样可以消除错误信息,但它不会将舞台上的侦听器或动画片段删除。我想要做的就是把玩家的精灵从一个东西变成另一个东西。所以,当代码添加一个新的动画片段时,它不会删除旧的或其监听器。 – 2013-04-22 17:29:10
@DanLibert你在哪里调用删除对象?如果它是一个组件构造函数,那可能只是它不在舞台上。 – Luis 2013-04-22 17:42:30
监听器和对象应该用我上面发布的IF语句去掉。我刚刚为IF语句添加了一个跟踪,并且他们没有开火。 – 2013-04-22 17:53:46