AS3 / Flex 4:通过AS3缓和

时间:2010-10-29 05:55:38

标签: flash actionscript-3 flex4

这可能很简单,但我对Flex 4中Animate类的缓和感到头疼。

基本上我只想通过以下方式设置缓动:

anim.easer = spark.effects.easing.EaseInOutBase(EasingFraction.IN_OUT);
然而,它抱怨说,

Type Coercion failed: cannot convert 0.5 to spark.effects.easing.EaseInOutBase.

哪个会好的,除了......构造函数参数是Number,而不是EaseInOutBase的实例。我错过了什么吗? Google的所有结果都表明这应该通过MXML进行定义,但我只是觉得......做得很脏 - 相反,定义一些纯粹带有标记的程序化的东西。我知道这只是Flex的一半,但我仍然希望将我的大部分逻辑/配置保留在AS3中。

如果有更好的方法来使用缓动进行动画制作而不是使用Animate easer属性(例如,如果这不是正确的方法),请随意提出替代方案 - 仍然有点Flex的新手。

1 个答案:

答案 0 :(得分:3)

是。你肯定错过了一些东西...... :)你错过了new关键字。

您的代码正在尝试将EasingFraction.IN_OUT转换为类型EaseInOutBase ...这就是为什么您会得到看似(但完全合适)的错误。

相反:

anim.easer = new spark.effects.easing.EaseInOutBase(EasingFraction.IN_OUT);

:)