flex状态及动画

切换base状态:currentState=''(注意是两个单引号)
跳转navigateToURL(new URLRequest('http://www.**.com'),'_blank')

在state下改变某个控件的属性(如某个控件可见)
<mx:State name="state1">
    <mx:SetPropery target="{datagrid}" name="visible" value="true"/>
</mx:State>

includeInLayout属性为false时,外部滚动条不出现。常用于某控件不可见时,将includeInLayout设为false。
当可见后将includeInLayout设为true。

添加动画
首先创建一个效果
<mx:Fade id="fadein" alphaFrom=".6" alphaTo="1" duration="1000"/>
创建触发器
<mx:Image rollOverEffet="{fadein}"/>

多组动画在一起
创建Parallel块
<mx:Parallel id="fadein"  duration="1000">
    <mx:Fade id="fadein" alphaFrom=".6" alphaTo="1"/>
    <mx:Resize widthTo="88" heightTo="88"/>
</mx:Parallel>

状态之间切换,将多个效果连在一起,用Sequence块
<mx:transitions>
<mx:Transition fromstate="state1" tostate="state2">
    <mx:Resize target="{datagrid}"/>
</mx:Transition>
<mx:Transition fromstate="state3" tostate="*">//*代表从state3到任何一个状态
    <mx:WipeLeft target="{loginContainer}"/>//target可以指向多个,用逗号分开{loginContainer1,loginContainer2}
</mx:Transition>
</mx:transitions>

以下动画解释:从右到左的动画应用于loginContainer,动画结束后,删除loginContainer,
之后增加mainContainer,增加后从左向右显示
<mx:Sequence>
    <mx:WipeLeft target="{loginContainer}" showTarget="false"/>
    <mx:RemoveChildAction target="{loginContainer}"/>
    <mx:AddChhildAction target="{mainContainer}"/>
    <mx:WipeRight target="{mainContainer}"/>
</mx:Sequence>

你可能感兴趣的:(Flex)