新Tween无法正常工作

时间:2012-10-22 16:27:40

标签: actionscript-3 flash

对于我在这里出错的地方有点困惑

我有一个名为myText的动态文本字段。 我正在运行以下代码:

package  {
import fl.transitions.Tween;
import fl.transitions.easing.Elastic;
import flash.display.MovieClip;
import fl.transitions.easing.*;
import flash.text.TextField;
import flash.text.TextFormat;


public class video extends MovieClip {


    public function video() {


        var fmt:TextFormat = new TextFormat();

        var letterTween:Tween = new Tween(fmt, "letterSpacing", Elastic.easeInOut, 6, 15, 2, true);

        myText.setTextFormat(fmt);



    }
}

}

我知道它的目标是文本,因为文本字母间距在运行时设置为6,但没有任何反应,我不会让我很好地补充到15个字母的空格(ing)

我哪里错了?

感谢

安德鲁

1 个答案:

答案 0 :(得分:2)

您没有看到任何更新的原因是因为当TextFormat属性发生更改时,您必须重新应用TextFormat。您需要做的就是从Tween收听更新并将其应用到那里。

我的例子在CS5的时间轴上进行了测试,然后继续修改你的课程。

import fl.transitions.Tween;
import fl.transitions.easing.Elastic;
import flash.display.MovieClip;
import fl.transitions.easing.*;
import flash.text.TextField;
import flash.text.TextFormat;
import fl.transitions.TweenEvent;

var fmt:TextFormat = new TextFormat();
var letterTween:Tween = new Tween(fmt, "letterSpacing", Elastic.easeInOut, 6, 15, 2, true);
letterTween.addEventListener(TweenEvent.MOTION_CHANGE, onMotionChanged);
myText.setTextFormat(fmt);

function onMotionChanged(event:TweenEvent):void{
    myText.setTextFormat(fmt);
}