2012-04-20 31 views
0

我是Flex和Flash Builder中的新成员,所以对于愚蠢的问题感到抱歉:)。s:以恒定的旋转速度旋转3D

我想要做的是一个Android应用程序。时钟,图像每20分钟完成一次完整的旋转周期。

这里是我的代码:

<?xml version="1.0" encoding="utf-8"?> 
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
     xmlns:s="library://ns.adobe.com/flex/spark" title="HomeView"> 
    <fx:Declarations> 
     <s:Rotate3D 
      id="rotateEffect" 
      target="{clock}" 
      angleZFrom="0" 
      angleZTo="360" 
      repeatCount="999999999" 
      duration="1200000" 
      autoCenterTransform="true" 
      /> 
    </fx:Declarations> 
    <s:actionContent> 
     <s:Button click="NativeApplication.nativeApplication.exit()" icon="assets/appi_11.png" 
        styleName="title"/> 
    </s:actionContent> 
    <s:Image id="clock" horizontalCenter="0" source="assets/rotateMe.png" verticalCenter="0" click="rotateEffect.play()"/> 
</s:View> 

的问题是,有某种缓和的行为和旋转的速度不是恒定的。

有没有什么办法可以解决这个问题?

回答

0

我不太了解Flex或Flash Builder的特性。这听起来像是动画不是在“实时”播放,这取决于系统如何处理它。一般来说,您想根据当前(系统)时间和开始时间(保存在变量中)之间的时间差来旋转时钟(手臂)。所以时钟将正常运行,而不管系统更新画布的频率如何。

+0

谢谢! 我会尽力学习如何做到这一点:)。我很遗憾地使用代码进行垃圾处理,并且由于“Rotate3D”具有持续时间版本。我认为我可以用它来快速解决问题。 – Miha 2012-04-20 22:32:46