解决了,每次播放时去从完整动画里截断一个新的clip,播放这个新的clip
[code] animator.stop();
var percent:Number = animator.currentFrameTime / animator.getClip("Draw").duration();
//trace("currentFrameTime: " + animator.currentFrameTime + " endTime: " + animator.getClip("Draw").duration());
var totalAnimationClip:AnimationClip = animator.getClip("Shoot");
//动画总时长
var maxTime:Number = totalAnimationClip.duration();
//每帧间隔
var frameInterval:int = 1 / animator.cacheFrameRate;
//总帧数
var endFrame:int = Math.floor(maxTime / frameInterval);
//计算开始帧
var startFrame:int = Math.floor(endFrame * (1 - percent));
animator.addClip(totalAnimationClip,"runShoot",startFrame);
animator.on(Event.STOPPED, this, this.removeClip);
animator.on(Event.COMPLETE, this, this.removeClip);
animator.play("runShoot");[/code]