非常简单的问题。看看下面的代码。这是一个带进度条的非常简单的装载机。进度条是舞台上的一个符号“bar”。
我想要的只是在完成加载时淡出标尺,并淡化加载的图像。我尝试了很多方法而没有太多运气。
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);
提前感谢任何能给我任何指示的人!
答案 0 :(得分:1)
我并没有真正做很多flash开发,但是我的同事喜欢GTween以获得简单的动画效果。
http://www.gskinner.com/libraries/gtween/
如果您检查演示,您将看到您可以做一些高级的东西,但是假设进行基本淡入淡出也很简单。下面是基本动画的示例,将vars itemToTween,secondsToAnimate和更改alpha设置为您希望为当前属性设置动画的属性。
new GTween(itemToTween, secondsToAnimate, { alpha: 1 }, { ease:Sine.easeOut } );
希望能帮到你一点点,直到有更多知识的人可以提供帮助。
答案 1 :(得分:1)
尝试其中一个库。 Flash有一个用于补间,fl.transitions.Tween的内置库,但它不如这些好。提到的所有三个都有一个非常相似的API。
对于你的例子,你会这样做(使用Tweener):
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});
};
这将在条形码到alpha 0之间占用0.5秒,在加载器的内容(图像)之间补间到alpha 1,耗时0.5秒,延迟0.5秒,所以条形淡出,图像立即消失英寸