TweenLite參數(shù)說明:
1) $ target : Object - 作為目標(biāo)的對象, MovieClip或者其它對象
2) $ duration : Number - 動畫的時間長度(單位:秒)
3) $ vars : Object – 對象,通過屬性值,來存貯各種屬性參數(shù)用于緩動.(如果你使用 TweenLite.from() 方法,這里的參數(shù)表示緩動的初始值)
該對象所具有的屬性:
alpha: alpha 目標(biāo)對象應(yīng)該完成 (或開始,當(dāng)使用 TweenLite.from()時)的透明度級別.如果 target.alpha 是1,當(dāng)緩動被執(zhí)行的時候,你指定參數(shù)為 0.5,它將把透明度從 1 緩動到 0.5.
x: 改變 MovieClip的 x 位置,把這個值設(shè)置成你希望的 MovieClip 的結(jié)束位置(如果你使用的是 TweenLite.from()這個值表示開始位置).
( y scaleX scaleY rotation 等屬性不再重復(fù)說明)
特別的屬性 (**可選的**):
delay : Number - 延遲緩動 (以秒為單位).
ease : Function - 緩動函數(shù). 例如,fl.motion.easing.Elastic.easeOut 函數(shù).默認(rèn)的是 Regular.easeOut函數(shù).
easeParams : Array - 用來存貯緩動公式所需要的額外數(shù)據(jù). 當(dāng)使用 Elastic 公式并且希望控制一些額外的參數(shù),比如放大系數(shù)和緩動時間.大多數(shù)的緩動公式是不需要參數(shù)的,因此,你不需要給其它的緩動公式傳遞參數(shù).
autoAlpha : Number - 用它來代替 alpha 屬性,可以獲得一些副加的效果,比如當(dāng) alpha 值緩動到 0時,自動將 visible 屬性改為 false.當(dāng)緩動開始前,autoAlpha 大于 0時,它將會把 visible 屬性變成 true .
visible : Boolean - 在緩動結(jié)束時,想要指定 DisplayObject 的 visible 屬性,請使用這個參數(shù).
volume : Number - 對 soundTransform (MovieClip/SoundChannel/NetStream 等)對象中的volume屬性(音量大小)進(jìn)行緩動
tint : Number - 改變 DisplayObject 的顏色,設(shè)置一個16進(jìn)制顏色值之后,當(dāng)緩動結(jié)束時,目標(biāo)對象將被變成這個顏色,(如果使用的是TweenLite.from(),這個值將表示目標(biāo)對象 開始緩動時的顏色).舉個例子,顏色值可以設(shè)定為: 0xFF0000.
removeTint : Boolean - 要移除 DisplayObject 顏色,將這個參數(shù)設(shè)成 true .
frame : Number - 將 MovieClip 緩動到指幀頻.
onStart : Function - 在緩動開始時想要執(zhí)行某個函數(shù),就將函數(shù)的引用(通常是函數(shù)名)放到這里.如果緩動是帶延遲的,那么在緩動開始前該函數(shù)不會被執(zhí)行.
onStartParams : Array - 為緩動開始時要執(zhí)行的函數(shù)傳遞參數(shù).(可選的)
onUpdate : Function - 緩動過程中,每次更新時調(diào)用這里指定的函數(shù)(緩動開始后,每一幀被觸發(fā)一次),
onUpdateParams : Array - 給 onUpdate 參數(shù)指定的函數(shù)傳遞參數(shù) (可選的)
onComplete : Function - 緩動結(jié)束時執(zhí)行的函數(shù).
onCompleteParams : Array - 給 onComplete 參數(shù)指定的函數(shù)傳遞參數(shù) (可選的)
persist : Boolean - 值為 true 時,TweenLite 實(shí)例將不會自動被系統(tǒng)的垃圾收集器給收走.但是當(dāng)新的緩動出現(xiàn)時,它還是會被重寫(overwritten)默認(rèn)值為 false.
renderOnStart : Boolean - 如果你使用帶有延遲緩動的 TweenFilterLite.from() ,并且阻止緩動的渲染(rendering )效果,直到緩動真正開始,將這個值設(shè)為 true.默認(rèn)情況下該值為 false ,這會讓渲染效果立即被執(zhí)行,甚至是在延遲的時間還沒到之前.
overwrite : int - 當(dāng)前的緩動被創(chuàng)建以后,通過這個參數(shù)可以限制作用于同一個對象的其它緩動,可選的參數(shù)值有:
- 0 (沒有): 沒有緩動被重寫.這種模式下,運(yùn)行速度是最快的,但是需要注意避免創(chuàng)建一些控制相同屬性的緩動,否則這些緩動效果間將出現(xiàn)沖突.
- 1 (全部): (這是默認(rèn)值,除非 OverwriteManager.init() 被調(diào)用過)對于同一對象的所有緩動在創(chuàng)建時將會被完全的覆蓋掉.
TweenLite.to(mc, 1, {x:100, y:200});
TweenLite.to(mc, 1, {x:300, delay:2}); //后創(chuàng)建的緩動將會覆蓋掉先前創(chuàng)建的緩動,(可以起到這樣的作用:緩動進(jìn)行到一半時被中斷,執(zhí)行新的緩動 譯者注)
- 2 (自動): (當(dāng) OverwriteManager.init() 被執(zhí)行后,會根據(jù)具體的屬性值進(jìn)行選擇)只覆蓋對同一屬性的緩動.
TweenLite.to(mc, 1, {x:100, y:200});
TweenLite.to(mc, 1, {x:300}); //only "x" 屬性的緩動將被覆蓋
- 3 (同時發(fā)生): 緩動開始時,覆蓋全部的緩動.
TweenLite.to(mc, 1, {x:100, y:200});
TweenLite.to(mc, 1, {x:300, delay:2}); //不會覆蓋先前的緩動,因?yàn)槊慷€緩動開始時,第一個緩動已經(jīng)結(jié)束了.
舉例:
將實(shí)例名為 "clip_mc" 的 MovieClip 透明度降到 50% (0.5) ,并將它 x 軸位置移動到 120 ,將音量將到 0,緩動總共用時 1.5 秒,代碼如下:
import gs.TweenLite;
TweenLite.to(clip_mc, 1.5, {alpha:0.5, x:120, volume:0});
如果希望使用更高級的緩動函數(shù)在 5 內(nèi),將 alpha 變到 0.5,將 x 移動 到 120 ,使用 "easeOutBack" 彈性函數(shù),緩動整體延遲 2 秒發(fā)生,并且在緩動結(jié)束時,執(zhí)行 "onFinishTween" 函數(shù),并且為這個函數(shù)傳遞幾個參數(shù),(一個數(shù)值 5 以及對 clip_mc 的引用),代碼如下:
import gs.TweenLite;
import fl.motion.easing.Back;
TweenLite.to(clip_mc, 5, {alpha:0.5, x:120, ease:Back.easeOut, delay:2, onComplete: onFinishTween, onCompleteParams:[5, clip_mc]});
function onFinishTween(argument1:Number, argument2:MovieClip):void {
trace("The tween has finished! argument1 = " + argument1 + ", and argument2 = " + argument2);
}
如果你的舞臺上的 MovieClip 已經(jīng)停在了它的結(jié)束位置,你只想讓它花上5秒種回到這個位置,(只需要改變 y 屬性,比當(dāng)前位置高 100 像素的位置,讓它從那里下落), 代碼如下(這次使用的是 TweenLite.from 譯者注):
import gs.TweenLite;
import fl.motion.easing.Elastic;
TweenLite.from(clip_mc, 5, {y:"-100", ease:Elastic.easeOut});
說明:
- TweenLite類會讓你的 Flash 文件增加 3kb大小.
- 給參數(shù)值加上引號,表示對指定的屬性進(jìn)行相應(yīng)操作.比如,使用 TweenLite.to(mc, 2, {x:"-20"}); 它將 mc.x 向左移動 20 像素,與此相同效果的代碼是:TweenLite.to(mc, 2, {x:mc.x - 20});
- 你可以用別的緩動函數(shù)替換 TweenLite 默認(rèn)的緩動函數(shù): Regular.easeOut.
- 必須使用 Flash Player 9 或之后版本的播放器 (ActionScript 3.0)
- 可以對任何 MovieClip 使用 "volume" 緩動,就比如:TweenLite.to(myClip_mc, 1.5, {volume:0});
- 可以將 MovieClip 設(shè)定成某種顏色,使用 "tint" 參數(shù),比如: TweenLite.to(myClip_mc, 1.5, {tint:0xFF0000});
- 想要對數(shù)組內(nèi)容進(jìn)行緩動,將數(shù)值放到一個叫 endArray 的數(shù)組中即可,例如:
var myArray:Array = [1,2,3,4];
TweenLite.to(myArray, 1.5, {endArray:[10,20,30,40]});
- 可以在任何時候終止緩動,使用 TweenLite.killTweensOf(myClip_mc); 函數(shù).如果想強(qiáng)制終止緩動,可以傳遞一個 true 做為第二個參數(shù),比如
TweenLite.killTweensOf(myClip_mc, true);
- 取掉延遲回調(diào)函數(shù),用 TweenLite.killDelayedCallsTo(myFunction_func);這項(xiàng)功能可以用來控制回調(diào)函數(shù)的優(yōu)先級.
- 使用 TweenLite.from() 方法,可以使用對象從別的位置回到當(dāng)前的位置.例如,你可以將對象在舞臺上擺放整齊(緩動結(jié)束時的位置),然后利用
緩動,讓它們跑到那個位置上去,你可以將緩動的初始位置值 x 或 y 或 alpha (或者其它你需要的屬性)當(dāng)做參數(shù)傳遞給這個方法函數(shù).