2010-02-10 76 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 }); 

希望能帮助你一点点,直到有更多知识的人能够帮助你为止。