Flash as3,闪光层-过渡层冻结

Flash as3,闪光层-过渡层冻结,flash,actionscript-3,actionscript,tween,Flash,Actionscript 3,Actionscript,Tween,我在不同的电影剪辑中有一堆不同的二人组,但在我的过渡过程中,有时二人组会冻结 这家伙也有同样的问题,他的问题也得到了回答,但我不太清楚他们告诉他该怎么做时的确切意思: 我是否必须在我的网站最开始的时候在根目录中导入我的tween类,然后引用每个电影剪辑中的类,而不是单独导入每个电影剪辑中的类 下面是我的一部电影中的一个二人组的例子: // Import classes import fl.transitions.Tween; import fl.transitions.easing.*; //

我在不同的电影剪辑中有一堆不同的二人组,但在我的过渡过程中,有时二人组会冻结

这家伙也有同样的问题,他的问题也得到了回答,但我不太清楚他们告诉他该怎么做时的确切意思:

我是否必须在我的网站最开始的时候在根目录中导入我的tween类,然后引用每个电影剪辑中的类,而不是单独导入每个电影剪辑中的类

下面是我的一部电影中的一个二人组的例子:

// Import classes
import fl.transitions.Tween;
import fl.transitions.easing.*;

// Bring in elements with tweening
var bandY:Tween = new Tween(band, "y", Strong.easeOut, 533, 259, 3, true);
var boxY:Tween = new Tween(box, "y", None.easeOut, -122, 0, 1, true);
var signY:Tween = new Tween(sign, "y", Regular.easeOut, 551, 224, 1.5, true);
var signX:Tween = new Tween(sign, "x", Regular.easeOut, -17, 82, 1.5, true);
var dragonMaskWidth:Tween = new Tween(dragonMask, "width", Regular.easeOut, 30, 500, 3, true);

事实上,我知道另一个人在说什么。 我必须把两个变量移到函数之外,这很有意义。 一开始很难看出他们的代码有什么不同。
我还意识到,这是一个糟糕的示例代码,因为没有函数。

你提到的论坛中的帖子的意思是,他们应该尝试为tweens创建非局部变量。因此,与其这样做

function onClick(e:MouseEvent):void
{
    nextPage = e.currentTarget.mcTarget;
    var theTween:Tween = new Tween(currentPage,"alpha",Strong.easeOut,1,0,1,true);
    theTween.addEventListener(TweenEvent.MOTION_FINISH, onTween);
}
他们说要试试这个:

var theTween:Tween;  
function onClick(e:MouseEvent):void
{
    nextPage = e.currentTarget.mcTarget;
    theTween = new Tween(currentPage,"alpha",Strong.easeOut,1,0,1,true);
    theTween.addEventListener(TweenEvent.MOTION_FINISH, onTween);
}
通过这样做,变量“theTween”的作用域不是onClick事件处理程序函数的局部作用域,而是与函数本身在同一作用域中

我最大的建议是尝试使用一个不同的tweening库,那里有很多。内置的flash吐温库让IMHO有很多地方需要改进。我想看看其中的一个或多个:


还有很多。。。看一看

我一定会试试的。我对as3还相当陌生,但我必须研究这些。谢谢。计时器也应该以同样的方式放在函数之外吗?