Я пытаюсь сделать плавно накладывать эффект, и я имею
TransitionManager.start (imageHolder, {type:Fade, direction:Transition. В, duration:0.75});
Который заставляет изображение постепенно появиться, но я также хочу, чтобы изображение постепенно исчезло, который оно не делает, когда я изменяю direction:Transition. В к direction:Transition.
Кто-либо знает то, что я пропускаю?Спасибо!
Используйте Greensocks TweenLite. Ваша жизнь станет лучше от этого. Та же строка с TweenLite была бы:
TweenLite.to(imageHolder, 0.75, {alpha:1});
Затем для затухания вы бы сделали:
TweenLite.to(imageHolder, 0.75, {alpha:0});
Вы также можете сделать это простое затухание, используя булевский флаг и на enterFrame вот так:
var fadeIn:Boolean = true;
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
function enterFrameHandler(e:Event):void
{
var easeSpeed:Number = 0.4;
var targetAlpha:Number = (fadeIn) ? 1 : 0;
imageHolder.alpha += (1 - imageHolder.alpha) * easeSpeed;
}
просто установите fadeIn в true или false в любом другом месте вашего кода, и enterframe позаботится о затухании. targetAlpha устанавливается с помощью троичного оператора, который проверяет, true или false fadeIn. Если верно, то targetAlpha устанавливается в 1, иначе - в 0. Последняя строка в функции enterFrameHandler - это простой алгоритм облегчения, который облегчает движение к цели на процент каждый кадр. Отрегулируйте easeSpeed, пока это не будет выглядеть правильно.