2010-02-10 3 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.

Для примера, вы могли бы сделать это (с 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}); 
}; 

Это промежуточные кадры бар в альфа- 0 принимая .5 секунд, твин содержание загрузчика (изображение) с альфа-1 принимать. 5 секунд, после задержки .5 секунд, поэтому бар исчезает и сразу изображение выцветает.

Cheat Sheet for Tweener easing functions

+0

Это здорово. Большое спасибо. Окно вывода дает мне ошибку (см. Ниже), но фильм отлично работает. Еще раз спасибо! ## [Tweener] Ошибка: свойство transtion не похоже на обычное свойство объекта [object MovieClip] или зарегистрированное специальное свойство. – Maria

1

Я действительно не занимаюсь разработкой флеш-памяти, но мой коллега любит GTween для простой анимации.

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

Если вы проверите демок вы будете видеть вы можете сделать некоторые дополнительные вещи, но предполагают, чтобы быть очень просто сделать основное замирание в и тоже. Ниже приведен пример базовой анимации, установите vars itemToTween, secondsToAnimate и измените альфа, чтобы быть свойством, для которого вы хотите анимировать текущее свойство.

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

Надеюсь, что это поможет вам немного, пока кто-то с большим количеством знаний не сможет помочь.