补间方法AS3中的问题

时间:2011-07-22 15:56:19

标签: flash actionscript-3

从timerEvent我调用了一个函数[比如'createBall'],每次传递一个Variable [ballCount]。 在该函数[create ball]中,已调用补间并添加了TweenComplete Listener。 然而,补间还没有完成。也没有给出任何错误。

tweenX = new Tween(obj,"x",Regular.easeInOut,nX,this["tile" + String(bombHit_A[nBombCount] + 0)].x,2,true);
tweenY = new Tween(obj,"y",Regular.easeInOut,nY,this["tile" + String(bombHit_A[nBombCount] + 0)].y,2,true);
tweenX.addEventListener(TweenEvent.MOTION_FINISH, function (e:TweenEvent){hitCompleted(e,obj.name,"tile" + String(bombHit_A[nBombCount] + 0),nBombCount)});

1 个答案:

答案 0 :(得分:1)

显然,这是同一个案例as in this post:您的补间实例过早地被垃圾收集。 Follow the link了解更多信息。

编辑决定在这里添加一些提示。您在哪里存储tweenXtweenY个变量?它们的范围是什么?他们是用方法宣布的吗?如果是这样,一旦该方法退出,则引用被处理掉。您需要在整个工作期间保持对补间对象的可行引用,否则它们可能在此过程中被垃圾收集(但您无法确定是否会发生这种情况) )。