2012-10-22 51 views
1

有點困惑,我在哪裏出錯這裏新的補間不能正常工作

我有一個動態的文本字段,稱爲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)

我在哪裏出錯?

感謝

安德魯

回答

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); 
} 
+1

好東西。知道我錯過了一些愚蠢的東西。謝謝 – atmd