我是ActionScript 3的新手,我遇到了一个基本问题。我试图淡化我的一个变量,但它只是淡入。它是补间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();
}
答案 0 :(得分:-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 :(得分:-1)
以下是一些代码的示例,或多或少地执行了您要执行的操作。我相信你可以从中学习并适应你的代码。
要测试我的代码制作三个MovieClip并将'em放在舞台上,实例名称'boxA','boxR'和'blackbtn'单击按钮将启动计时器和补间。在我的例子中,'boxes'在一个数组中,并且补间是在'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();
}