我已经多次被告知或者我已经在各个地方阅读过(不记得现在在哪里)不使用Flex SDK中的Tween类,而是使用其他动画库,如Tweener,TweenMax,GTween ,...
使用Flex补间有什么问题?这是性能问题吗?
如果我想进行状态转换,是否应该使用第三方库进行自定义转换?
答案 0 :(得分:2)
作为参考,这里有一些有用的东西:
如果您的目标只是在皮肤中进行状态转换,那么最简单的方法就是使用Flex Effect类。 Flex 4即将发布,它完全重写了它的效果库,比Flex 2/3快得多。我运行了一个快速测试,每个500 mx.controls.Button实例,一个接一个,使用TweenMax和Flex Effects,并且TweenMax大约快两倍(意味着我可以看到15个对象同时移动而不是7或8) )。所以如果你可以,我会用TweenMax做所有的动画。绝对是最通用/最受欢迎/模块化/优化的。但是对于皮肤,并且因为Flex Effects已准备好在MXML中使用皮肤,请使用它们。
还可以查看Tink's Efflex Flex Effect Library以获得一些不错的Container / Viewstack效果(有些是3D)。
答案 1 :(得分:1)
根据你一直在阅读的博客,他们可能会在flash / actionscript上有一个emphises。在这种情况下,它可能会推荐像tweenlight或类似的东西。
如果您正在使用flex及其库,则没有理由不使用flex效果(基于flex的吐温版本)。请注意,flex Tween与flash Tween不同。但你真的不必担心,如果你想移动一些东西,只需使用移动效果,如果你想淡化某些东西,那么只需使用淡化效果。
有些人可能会推荐另一个补间包,因为它会使整体SWF大小变小,但这取决于您构建结束SWF的方式。您是使用Flex框架作为RSL部署SWF(建议虽然Google不能搜索您的SWF但是如果您这样做,请检查this link)然后最好使用Flex效果。如果您没有将框架用作RSL,那么测试您的应用程序就可以看到哪个版本是更大的SWF文件。
使用弹性效果我从未遇到任何性能问题。 一些第三方补间包执行的效果不属于flex库,但除此之外,我无法想到任何不使用flex效果/补间的好理由。