作者dsmwang (科科)
看板Flash
標題[問題] Tween時靈時不靈?
時間Fri Sep 3 02:22:31 2010
我想把許多不同的文字一個接一個出現,
所以我用了這種語法:
function moveWords(evt:TweenEvent):void{
evt.target.removeEventListener(TweenEvent.MOTION_FINISH,moveWords);
var theLine = wordText.createTextLine(textLine,300);
if(theLine!=null){
textLine = theLine;
yPos += theLine.textHeight+2;
addChild(theLine);
theLine.x=607;
theLine.y=312;
var xTween:Tween =
new Tween(theLine,"x", Regular.easeInOut ,607,700,30);
var yTween:Tween =
new Tween(theLine,"y", Regular.easeInOut ,312,yPos,30);
var alphaTween:Tween =
new Tween(theLine,"alpha", Regular.easeInOut ,0,1,30);
xTween.addEventListener(TweenEvent.MOTION_FINISH,moveWords);
}else{trace("moveWord over!!")};
trace("moveWord complete");
}
結果大部分時候都是ok的
但是假如匯入的文字太多,就是wordText裡面的內容太長
到了要出現第6~7個TweenEvent.MOTION_FINISH的時候,動畫就會停止。
很明顯能看出來是播到一半就停了,alpha大概在0.3~0.4的樣子
x跟y也就是動到一半的情況。
而且中止那次的moveWord complete有trace出來
為什麼Tween到一半會自己終止?
我怎麼想都想不出原因= =....
請高手指點XD..
**我測試了一下,似乎跟我後面填的數字有關
我填60個影格的話,大概3~4個Tween就會停止
所以我現在只好把影格數改短來暫時解決這個問題...= =
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.252.123
※ 編輯: dsmwang 來自: 140.112.252.123 (09/03 02:27)
推 cjcat2266:不建議用內建的Tween class,效能差又bug一堆... 09/03 02:30
→ cjcat2266:我看Adobe也沒心更新了,因為強大的tween engine有一堆~ 09/03 02:31
→ dsmwang:好吧XD...那我下次試著用TweenLite來做好了XD..thanks~ 09/03 02:32
推 cjcat2266:隨便一個第三方引擎效能都是Tween的好幾倍啦! 09/03 02:35
→ justaID:請問樓上大神可以說說最推薦的一個嗎? 09/03 09:43
→ justaID:(最近正好在學Tween) 09/03 10:04
→ aquarianboy:來個 CJTween 吧(誤) 09/03 10:28
推 cjcat2266:沒有最推薦哪一個,TweenLite/TweenMax, Tweener 09/03 12:35
→ cjcat2266:GTween, BeTweenAS3, Tweensy 都很棒,>都自己去玩玩吧 09/03 12:36
推 emily114005:推CJTween XD 09/03 13:28
→ dsmwang:試用了TweenMax,不賴耶,而且方便,雖然我也只用過這個XD 09/03 15:49
推 STARGAZERs:Tween Lite +1 ~ 不過看過他 code 會覺得很有趣 09/03 17:50
推 jones86723:TweenLite/Max的移動模糊功能要vip誰可以分享一下~~ 09/04 16:08