2010-02-10 70 views
0

非常簡單的問題。看看下面的代碼。這是一個帶有進度條的非常簡單的加載程序。進度條是舞臺上的一個符號,稱爲「酒吧」。非常簡單的關於淡入和淡出的AS問題

我想要的就是淡出吧,當它完成加載,並淡入加載的圖像。我嘗試了很多方法,但沒有多少運氣。

var loader: Loader = new Loader(); 
addChild(loader); 

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); 
function completeHandler(evt:Event):void { 
}; 

loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); 

function progressHandler(evt:ProgressEvent):void { 
    var percent: int = Math.round(evt.bytesLoaded/ evt.bytesTotal * 100); 
    bar.width = percent; 
}; 

var req:URLRequest = new URLRequest("encs1.jpg"); 

loader.load(req); 

在此先感謝任何人誰可以給我任何指針!

回答

1

GTween

Tweener

TweenLite

嘗試這些庫之一。 Flash有一個用於Tweening,fl.transitions.Tween的內置庫,但它不如這些。所有提到的三個API都有非常相似的API。

對於你的榜樣,你可以這樣做(與中間人):

function completeHandler(evt:Event):void { 
    Tweener.addTween(bar, {alpha:0, transtion:"easeOutQuad", time:.5}); 
    addChild(loader.content); 
    loader.content.alpha = 0; 
    Tweener.addTween(loader.content, {alpha:1, transition:"easeInOutQunit", time:.5, delay:.5}); 
}; 

這將補間酒吧阿爾法0取0.5秒,效果吐溫裝載機的內容(圖像)的α1回吐。 5秒,爲0.5秒的延遲後,使杆淡出,並立即在圖像中消失。

Cheat Sheet for Tweener easing functions

+0

這是很大的。非常感謝你。輸出窗口給我一個錯誤(見下文),但電影完美。再次感謝! ## [Tweener]錯誤:屬性'transtion'似乎不是[object MovieClip]的正常對象屬性或註冊的特殊屬性。 – Maria 2010-02-11 15:23:58

1

我真的沒有太多的Flash開發,但我的一個同事喜歡GTween簡單的動畫。

http://www.gskinner.com/libraries/gtween/

如果你檢查你會發現你可以做一些先進的東西的演示,但它是假設很簡單,做基本的淡入淡出過。下面是一個基本動畫的例子,設置變量itemToTween,secondsToAnimate並將alpha更改爲您希望爲當前屬性設置動畫的屬性。

new GTween(itemToTween, secondsToAnimate, { alpha: 1 }, { ease:Sine.easeOut }); 

希望能幫助你一點點,直到有更多知識的人能夠幫助你爲止。