flash游戏吧 关注:9,609贴子:42,887
  • 1回复贴,共1

[AS3.0]Error #2025: 提供的 DisplayObject 必须是调用者的子级

只看楼主收藏回复

关于显示对象的问题新人表示老是遇到这个问题……用了几乎无数方法去避免还是出现惹 只有看看有没有隐藏相当神秘强大的存在能帮忙解决 具体情况如下:
输出:
ArgumentError: Error #2025: 提供的 DisplayObject 必须是调用者的子级。
at flash.display::DisplayObjectContainer/removeChild()
at Main/enemymove()
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
事情大概是这样子:我想让一个显示对象播放完的时候删除自身 代码是这样的:
function enemymove(te:TimerEvent)
{
for (var i:uint = 0; i < enemyA.length; i++)
{
enemyA[i].y += enemyspeed;
if (enemyA[i].hitTestObject(judge))
{
player--;
players.gotoAndStop(player);
removeChild(enemyA[i]);
removeChild(judge);
removeChild(self);
enemyA.splice(i,1);
selfdie.x = self.x;
selfdie.y = self.y;
addChild(selfdie);
}
if (selfdie.currentFrame == 60)
{
removeChild(selfdie);
}
}
}
测试这个代码坑了:
if (selfdie.currentFrame == 60)
{
removeChild(selfdie);
}
如果删除了这个代码就没问题 但是selfdie实例就删不掉了 求问何解?


1楼2015-02-27 20:17回复
    我目测我未来很长时间没法上电脑 我就干脆把源文件和源码都发出来吧 要是有哪位大神闲着没事就帮我看看…我……语文不好 就这样吧……
    资源:http://pan.baidu.com/s/1pJ7em2f


    2楼2015-02-27 20:25
    回复