AS3 Tween冻结

时间:2011-07-07 03:17:03

标签: actionscript-3

我开始使用AS3的Tween功能,但每隔一段时间就注意到一些奇怪的行为。基本上,它在完成补间之前冻结。

这个网站似乎提供了解决方案: http://www.rgbeffects.com/blog/actionscript/tween-freeze-frustrations-avoid-actionscript-tweens-stalling-out/

我的程序要求每次旋转补间都能正常工作。我喜欢使用adobe功能,但这让我很紧张,因为它有这么大的问题。

我应该使用AS3的补间还是像greensock.com的TweenLite这样的外部补间?

哪个更可靠?

1 个答案:

答案 0 :(得分:4)

您的补间实例很可能过早地被垃圾收集,因为您不会在某处存储对它的引用。这是一个常见的错误,你可以轻松地谷歌。

解决方案:存储对Tween实例的引用,同时执行动画以将其从GC中保存。

请点击此链接获取详细说明:AS3 Garbage Collection, the reason your tweens are ending early

Official article on adobe.com也提到了这个问题(参见文章底部的注释):

  

注意:使用Tween类时请考虑变量范围。如果在函数中创建补间,则变量的作用域超出函数本身是很重要的。如果将补间存储到本地作用域的变量,则ActionScript垃圾收集会在函数完成时删除补间,这可能在补间甚至开始之前就已存在。

如果您想了解有关GC逻辑的更多信息,请参阅some links on garbage collecting

相关问题