欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

AS3.0 實(shí)例學(xué)習(xí) 熟悉tween以及tweenEvent的運(yùn)用

 更新時(shí)間:2007年12月12日 21:55:47   作者:  
案例3:熟悉tween以及tweenEvent的運(yùn)用

說(shuō)明:點(diǎn)擊標(biāo)簽載入特定的圖片說(shuō)明(其實(shí)是一個(gè)mc,只是坐標(biāo)不同),同時(shí)還有漸隱漸現(xiàn)效果,沒(méi)做loading,可能載入會(huì)有點(diǎn)慢。

演示:
http://www.live-my-life-with-yuyi.com/as3_cases/dynamic_with_events/

代碼:

初始化,給一些變量賦值

復(fù)制代碼 代碼如下:

import fl.transitions.Tween; 
import fl.transitions.easing.*; 
import fl.transitions.TweenEvent; 
var homeX:Number = -301; 
var homeY:Number = 110; 
var newsX:Number = -17; 
var newsY:Number = -777; 
var aboutX:Number = -1354; 
var aboutY:Number = -445; 
var xTween:Tween; 
var yTween:Tween; 
var inTween:Tween; 
var outTween:Tween; 
先是導(dǎo)入一些需要用到的類,然后定義幾個(gè)坐標(biāo),這幾個(gè)坐標(biāo)都是一個(gè)大mc的不同位置。

然后是初始化tween類,并對(duì)tween類監(jiān)聽(tīng)。

復(fù)制代碼 代碼如下:

xTween = new Tween(main_mc,"x",Strong.easeInOut,main_mc.x,homeX,2,true); 
yTween = new Tween(main_mc,"y",Strong.easeInOut,main_mc.y,homeY,2,true); 
inTween = new Tween(main_mc.home_mc,"alpha",None.easeNone,0,1,.5,true); 
outTween = new Tween(main_mc.home_mc,"alpha",None.easeNone,1,0,.5,true); 
xTween.addEventListener(TweenEvent.MOTION_FINISH,fadeIn); 
xTween.addEventListener(TweenEvent.MOTION_START,fadeOut); 
home_btn.addEventListener(MouseEvent.CLICK, navigate); 
news_btn.addEventListener(MouseEvent.CLICK, navigate); 
about_btn.addEventListener(MouseEvent.CLICK, navigate); 

實(shí)例化xTween,yTween后并不會(huì)馬上就運(yùn)行,如果在之后的代碼發(fā)現(xiàn)了stop動(dòng)作的話。這些參數(shù)跟AS2并沒(méi)有多大差別。
xTween和yTween是實(shí)現(xiàn)mc的緩動(dòng)效果,inTween和outTween是實(shí)現(xiàn)漸隱漸現(xiàn)效果的。
這里只監(jiān)聽(tīng)xTween而沒(méi)有監(jiān)聽(tīng)yTween,因?yàn)檫@兩個(gè)是同時(shí)進(jìn)行的所以監(jiān)聽(tīng)一個(gè)就行了。
最后是對(duì)3個(gè)按鈕的click監(jiān)聽(tīng)。

接下來(lái)就是最關(guān)鍵的上面提到的幾個(gè)函數(shù)

復(fù)制代碼 代碼如下:

function navigate(event:MouseEvent):void 

    if(event.target == home_btn) 
    { 
        setTween(homeX,homeY,main_mc.home_mc); 
    } 
    else if(event.target == news_btn) 
    { 
        setTween(newsX,newsY,main_mc.news_mc); 
    } 
    else 
    { 
        setTween(aboutX,aboutY,main_mc.about_mc); 
    } 

function setTween(tweenX:Number,tweenY:Number,tweenMC:MovieClip):void 

    xTween.begin = main_mc.x; 
    yTween.begin = main_mc.y; 
    xTween.finish = tweenX; 
    yTween.finish = tweenY; 
    tweenMC.alpha = 0; 
    inTween.obj = tweenMC; 
    xTween.start(); 
    yTween.start(); 


function fadeIn(event:TweenEvent):void 

    inTween.start(); 
    outTween.obj = inTween.obj; 

function fadeOut(event:TweenEvent):void 

    outTween.start(); 


先來(lái)看看navigate函數(shù),這是被3個(gè)按鈕共同調(diào)用的函數(shù),通過(guò)判斷不同的target.name設(shè)置不同的setTween。
再來(lái)看看setTween,參數(shù)tweenX和tweenY是目標(biāo)坐標(biāo),tweenMC是目標(biāo)mc,通過(guò)設(shè)置begin,finish,obj參數(shù)來(lái)改變xTween和yTween的初始坐標(biāo),目標(biāo)坐標(biāo),作用對(duì)象,最后調(diào)用start函數(shù)開(kāi)始運(yùn)動(dòng)。

fadeIn函數(shù)的作用是使inTween開(kāi)始,并且將inTween作用的對(duì)象賦予outTween,這樣outTween被調(diào)用的時(shí)候就能作用在正確的mc上了。
打包文件

相關(guān)文章

最新評(píng)論