AS3错误2025 removechild

时间:2016-10-08 00:47:42

标签: actionscript-3 flash removechild

我用AS3制作了一个游戏,你必须在它们爆炸并摧毁墙壁之前点击坠落的炸弹。现在,我试图移除当墙被摧毁时坠落的炸弹,所以我在游戏中对功能进行了removeChild(blob),因为这些炸弹被添加到舞台上{{1} },我一直收到这个错误:

  

ArgumentError:错误#2025:提供的DisplayObject必须是调用者的子级。 ......第80行

......顺便说一句,我已经尝试过这样的事情:

addChild(blob)

this.parent.removeChild(this);

blob.parent.removeChild(blob);

但我仍然得到同样的错误。

这是我的代码:

stage.removeChild(blob);

1 个答案:

答案 0 :(得分:2)

var name blob一次只能引用一个特定的Blob对象。 每次创建新Blob时,都会将名称blob重新分配给最后创建的Blob,而不会丢失对前一个名称的引用。

该错误表示,在您调用removeChild时,分配给名称的特定Blob" blob"不是孩子,它不在显示列表中。

因此它引用了错误的Blob或已从显示列表中删除。

为避免错误,您还可以说if(blob.parent)删除子blob

之类的内容