2014-03-06 48 views
0

我是ActionScript 3的新手,我遇到了一个基本问题。我试图淡入淡出我的一个变量,但它只是淡入。它是tween3。你能帮我吗?在ActionScript 3中淡入淡出

import fl.transitions.Tween; 
import fl.transitions.easing.*; 
import flash.events.TimerEvent; 
import fl.transitions.TweenEvent; 

var timer:Timer = new Timer(3000); 

timer.start(); 

var tween2:Tween = new Tween(main, "x", Strong.easeOut, main.x, 0, 2, true); 
var tween1:Tween = new Tween(his, "alpha", None.easeOut, 1, 0, 1, true); 
var tween3:Tween = new Tween(her, "alpha", Strong.easeInOut, 0, 1, 2, true); 
var tween4:Tween = new Tween(gilt, "alpha", Strong.easeIn, 0, 1, 2, true); 

tween1.stop(); 
tween2.stop(); 
tween3.stop(); 
tween4.stop(); 

timer.addEventListener(TimerEvent.TIMER, startTween); 

function startTween(event:TimerEvent):void { 

tween1.start(); 
tween2.start(); 
tween3.start(); 
tween4.start(); 
} 

timer.addEventListener(TimerEvent.TIMER, stopTimer); 

function stopTimer(event:TimerEvent):void { 
timer.stop(); 
} 

回答

-1

可以使用TweenMax框架,而不是tween3因为Tweenmax有很多功能(有时是比Flash时间轴更好)也在这里是您的解决方案:

var t:TweenMax = new TweenMax(main,1,{ x: 100, delay:1,ease: Strong.easeOut }); 
t.start(); 

stage.addEventListener(MouseEvent.CLICK, onClickedStage); 

function onClickedStage(event:MouseEvent):void 
{ 
    t.stop(); 
} 
+1

原始问题可以在不改变主题的情况下回答到不必使用的框架。 – Craig

-1

下面是一些代码,做一个例子,或多或少,你想做什么。我相信你可以从中学习并适应你的代码。

测试我的代码制作三个动画片段并将它们放在实例名称为'boxA','boxR'和'blackbtn'的舞台上点击按钮将启动您的计时器和补间。在我的情况下,'盒子'是在一个数组中,而补间是在'for'循环中创建的,但当然,它们不一定是。

import fl.transitions.Tween; 
import fl.transitions.easing.*; 
import fl.transitions.TweenEvent; 
import flash.events.TimerEvent; 

var timer:Timer = new Timer(1000); 
timer.addEventListener(TimerEvent.TIMER, timerListener); 

blackbtn.addEventListener(MouseEvent.CLICK, startit) 

var A:Array = new Array(); 
A.push(boxB); A.push(boxR); 

function timerListener(e) 
{ 
    for(var i:int = 0; i < A.length; i++) 
    { 
     new Tween(A[i], "alpha", Regular.easeOut, 1, 0, 1, true); 
    } 
} 

function startit(e) 
{ 
    timer.start(); 
}