2010-05-26 2 views
0

Везде, где я смотрел, было поручено загрузить плагины и дополнения, потому что они «превосходят». Я просто ищу, чтобы просто исчезнуть/исчезнуть, когда ребенок добавлен/удален (если fadein - это все, что я могу получить, я возьму его.) Вот функция, которую я звоню ...fadein child при вызове addChild

var trashbagFrame:MovieClip = new menu_trashbag_mc_frame(); 
trashbagFrame.x = 900; 
trashbagFrame.y = 0; 

menu_trashbag_mc.addEventListener(MouseEvent.MOUSE_UP, trashbagContent); 

function trashbagContent(event:MouseEvent):void { 
    if(MovieClip(root).currentFrame == 850) { 
    while(MovieClip(root).numChildren > 2) 
    { 
     MovieClip(root).removeChild(MovieClip(root).getChildAt(MovieClip(root).numChildren - 1)); 
    } 
MovieClip(root).addChild(trashbagFrame); 
MovieClip(root).addChild (closeBtn); 
} 
else { 
MovieClip(root).addChild(trashbagFrame); 
MovieClip(root).addChild (closeBtn); 
MovieClip(root).gotoAndPlay(806); 
} 
} 
+0

Мне нравится, как люди обманывают его, говоря «простое» угасание. –

ответ

0

Скорее всего, эти сайты означали такие дополнения, как Tweener, и такие более гибкие/простые в использовании, когда вам постоянно нужны переходы.

В библиотеке ActionScript 3.0 есть класс Fade в пакете fl.transitions.

import fl.transitions.*; 
import fl.transitions.easing.*; 

TransitionManager.start(img1_mc, {type:Fade, direction:Transition.IN, duration:9, easing:Strong.easeOut}); 

https://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/fl/transitions/Fade.html

где

img1_mc 

будет объектом (в вашем случае ребенок), который вы хотите применить переход.

+0

Где бы я их положил? Я помещаю их после каждой функции, но ничего не произошло. – steve

+0

Я поместил код непосредственно после того, как каждая переменная объявлена ​​вверху, а когда она затухает, она не начинается с 0 непрозрачности, она начинается с 50% ... – steve

+0

Что точно вы пытаетесь это сделать? Если вы прочитаете AS Ref из ссылки, я разместил всю информацию там. При чтении у вас есть объект (img1_mc), который подвергнется переходу на основе параметров, которые вы ему даете. Параметры для типа перехода (Fade), направления (IN), длительности (9s) и типа ослабления (Strong.easeOut). Чтобы стать еще проще, вы можете использовать класс Tween. var fadeIntween: Tween = новый Tween (img1_mc, "alpha", None.easeIn, 0, 1, 9, true); https://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/fl/transitions/Tween.html – phwd

0

Вы можете просто использовать enterFrame для изменения свойства с течением времени. Что-то вроде:

var trashbag:MovieClip = new MovieClip(); 
trashbag.alpha = 0; 
addChild(trashbag); 
trashbag.addEventListener(Event.ENTER_FRAME, enterFrameHandler); 

var closeBtn:MovieClip = new MovieClip(); 
closeBtn.alpha = 0; 
addChild(closeBtn); 
closeBtn.addEventListener(Event.ENTER_FRAME, enterFrameHandler); 

function enterFrameHandler(e:Event):void 
{ 
    var targetMC:MovieClip = e.currentTarget as MovieClip; 
    if(targetMC.alpha >= 0.9) 
    { 
     targetMC.alpha = 1; 
     targetMC.removeEventListener(Event.ENTER_FRAME, enterFrameHandler); 
    } 
    else 
    { 
     targetMC.alpha += 5; 
    } 
} 

Надеюсь, что пример кода поможет. Я не тестировал его, но идея работает.