flex4拾遗一: transition

</pre><div class="cnblogs_code" style="margin: 5px 0px; padding: 5px; border: 1px solid rgb(204, 204, 204); overflow: auto; font-family: 'Courier New' !important; background-color: rgb(245, 245, 245);"><div class="cnblogs_code_toolbar" style="margin: 5px 0px 0px; padding: 0px;"><span class="cnblogs_code_copy" style="margin: 0px; padding: 0px 5px 0px 0px; line-height: 1.5 !important;"><a target=_blank title="复制代码" style="margin: 0px; padding: 0px; color: rgb(100, 102, 179); text-decoration: underline; border: none !important;"><img src="https://i-blog.csdnimg.cn/blog_migrate/69c5a8ac3fa60e0848d784a6dd461da6.gif" alt="复制代码" style="margin: 0px; padding: 0px; max-width: 900px; border: none !important;" /></a></span></div><pre style="margin-top: 0px; margin-bottom: 0px; padding: 0px; white-space: pre-wrap; word-wrap: break-word; font-family: 'Courier New' !important;"> <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:transitions</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
       <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Transition </span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;">fromState</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="default"</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
            <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Parallel</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
                <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">mx:Resize </span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;">target</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="{loginPanel}"</span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;"> duration</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="100"</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">/></span> 
                <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Wipe </span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;">direction</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="right"</span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;"> target</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="{confirm}"</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">/></span> 
            <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"></</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Parallel</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
        <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"></</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Transition</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
       <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Transition </span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;">fromState</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="Register"</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
            <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Sequence</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
                <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"><</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">mx:Resize </span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;">target</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="{loginPanel}"</span><span style="margin: 0px; padding: 0px; color: rgb(255, 0, 0); line-height: 1.5 !important;"> duration</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">="100"</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">/></span> 
            <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"></</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Sequence</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
        <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"></</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:Transition</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
    <span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;"></</span><span style="margin: 0px; padding: 0px; color: rgb(128, 0, 0); line-height: 1.5 !important;">s:transitions</span><span style="margin: 0px; padding: 0px; color: rgb(0, 0, 255); line-height: 1.5 !important;">></span> 
复制代码

 

复制代码
<s:transitions>
        <s:Transition id="trans" fromState="*" toState="*">
            <s:Sequence>
                <s:Resize duration="800" target="{viewBox}"/>
                <s:Rotate angleBy="180" autoCenterTransform="true" duration="300" target="{bt}"/>
            </s:Sequence>
        </s:Transition>
    </s:transitions>
复制代码

transitions: 一个 Transition 对象 Array,其中的每个 Transition 对象都定义一组效果,用于在视图状态发生更改时播放。

普通效果:定义后,在指定的时候播放。

 

指定的时间:

1.在执行play(),end()的时候播放。

2.在指定发生事件里播放,比如: hideEffect="{dissolveOut}"  showEffect="{dissolveIn}"

 

复制代码
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx">
    
    <fx:Script>
        <![CDATA[
            protected function button1_clickHandler(event:MouseEvent):void
            {
                // TODO Auto-generated method stub
                
            }
        ]]>
    </fx:Script>
    
    <fx:Declarations>
        <!--动画效果-->
        <mx:AnimateProperty id="animateProperty" property="scaleX" fromValue="1" toValue="2"  duration="1000"/>  
        <mx:AnimateProperty id="animateProperty1" property="scaleX" fromValue="2" toValue="1"  duration="1000"/>
        <!--模糊效果-->
        <mx:Blur id="blurImage" duration="1000" blurXFrom="0.0" blurXTo="10.0"   blurYFrom="0.0" blurYTo="10.0"/>
        <mx:Blur id="blurImage1" duration="1000" blurXFrom="10.0" blurXTo="0.0"   blurYFrom="10.0" blurYTo="0.0"/>
        <!--发光效果-->
        <mx:Glow id="glowImage" duration="1000" alphaFrom="1.0" alphaTo="0.3"   blurXFrom="0.0" blurXTo="50.0" blurYFrom="0.0" blurYTo="50.0" color="0xFF0000"/>
        <mx:Glow id="glowImage1" duration="1000" alphaFrom="0.3" alphaTo="1"   blurXFrom="50.0" blurXTo="0.0" blurYFrom="50.0" blurYTo="0.0" color="0xFF0000"/>
        
        <!--dissolve效果,,,用于显示和隐藏-->
        <mx:Dissolve id="dissolveOut" duration="1000" alphaFrom="1.0" alphaTo="0.0" color="0xff0000"/>
        <mx:Dissolve id="dissolveIn" duration="1000" alphaFrom="0.0" alphaTo="1.0" color="0xff0000"/>
        <!--fade淡入淡出效果-->
        <mx:Fade id="fadeOut" duration="1000" alphaFrom="1.0" alphaTo="0.0"/>  
        <mx:Fade id="fadeIn" duration="1000" alphaFrom="0.0" alphaTo="1.0"/> 
        <!--虹效果,-->
        <mx:Iris id="irisOut" duration="1000" showTarget="true"/> 
        <mx:Iris id="irisIn" duration="1000" showTarget="false"/> 
        <!--Rotate旋转效果-->
        <mx:Rotate id="rotate" angleFrom="-45" angleTo="0" target="{img2}"  duration="2000"/>  
        
        
        <mx:Resize id="expand"   target="{img3}"  widthTo="265" heightTo="265"/> 
        <mx:Resize id="contract" target="{img3}" widthTo="25" heightTo="40"/> 
    </fx:Declarations>
    
    <mx:HBox>
        <mx:VBox>
            <mx:Image id="img1"  source="asdf.jpg" rollOverEffect="{animateProperty}"  rollOutEffect="{animateProperty1}" /> 
            <mx:Image id="img" source="asdf.jpg" rollOverEffect="{blurImage}"  rollOutEffect="{blurImage1}" />
            <mx:Image source="asdf.jpg" rollOverEffect="{glowImage}" rollOutEffect="{glowImage1}"/> 
        </mx:VBox>
        <mx:VBox>
            <mx:VBox>
                <mx:CheckBox id="cbx2" label="visible" selected="true"/>  
                <mx:Image source="asdf.jpg" visible="{cbx2.selected}"   hideEffect="{dissolveOut}" showEffect="{dissolveIn}"/> 
            </mx:VBox>
            
            <mx:VBox>
                <mx:CheckBox id="cbx" label="visible" selected="true"/> 
                <mx:Image source="asdf.jpg" visible="{cbx.selected}" hideEffect="{fadeOut}" showEffect="{fadeIn}"/>
            </mx:VBox>
            <mx:VBox>
                <mx:CheckBox id="cbx1" label="visible" selected="true"/> 
                <mx:Image id="Flex"  source="asdf.jpg" visible="{cbx1.selected}"  showEffect="{irisIn}" hideEffect="{irisOut}"/>  
            </mx:VBox>
        </mx:VBox>
        <mx:VBox>
            <mx:Image id="img2" source="asdf.jpg" addedEffect="rotate"/> 
        </mx:VBox>
        <mx:VBox>
            
            <mx:ControlBar> 
                <mx:Button label="Expand"   click="expand.end();expand.play();"/> 
                <mx:Button label="Contract" click="contract.end();contract.play();"/> 
            </mx:ControlBar>
            <mx:Image id="img3" width="25" height="40" source="asdf.jpg"/> 
        </mx:VBox>
        
    </mx:HBox>
            
        
</s:Application>
复制代码

 

复制代码
<s:states>
        <s:State name="collapsed"/>
        <s:State name="expanded"/>
    </s:states>
    <s:transitions>
        <s:Transition id="trans" fromState="*" toState="*">
            <s:Sequence>
                <s:Resize duration="800" target="{viewBox}"/>
            </s:Sequence>
        </s:Transition>
    </s:transitions>
    <s:Group id="viewBox" right="0" bottom="0" width="186" height="186"
             right.collapsed="0" bottom.collapsed="0" width.collapsed="0" height.collapsed="0">
        <s:BorderContainer id="zzz" left="5" right="5" top="5" bottom="5" width="180" height="180"
                           borderStyle="solid" cornerRadius="3"/>
        <mx:Box visible="{ovmap_show}" width="186" height="186" backgroundColor="#0D84CD"
                borderStyle="solid" cornerRadius="3" horizontalAlign="center"
                includeInLayout="{ovmap_show}" verticalAlign="middle"
                right.collapsed="0" bottom.collapsed="0" width.collapsed="0" height.collapsed="0">
            <s:Group width="180" height="180" cacheAsBitmap="true"
                     creationComplete="viewBox_creationCompleteHandler(event)" mask="{zzz}"
                     right.collapsed="30" bottom.collapsed="30" width.collapsed="0"
                     height.collapsed="0">
                <s:Rect id="vborder" left="0" right="0" top="0" bottom="0">
                    <s:fill>
                        <s:SolidColor alpha="1" color="0xFFFFFF"/>
                    </s:fill>            
                </s:Rect>
                <esri:Map id="ovMap" width="180" height="180" clickRecenterEnabled="false"
                          doubleClickZoomEnabled="false" keyboardNavigationEnabled="false"
                          load="ovMapLoaded(event)" logoVisible="false" panArrowsVisible="false"
                          panEnabled="false" rubberbandZoomEnabled="false" scaleBarVisible="false"
                          scrollWheelZoomEnabled="false" zoomSliderVisible="false"/>
                <s:filters>
                    <mx:DropShadowFilter alpha="0.3" angle="45" distance="5" inner="true"/>
                </s:filters>
            </s:Group>
        </mx:Box>
    </s:Group>
    <mx:SWFLoader id="bt" right="2" bottom="2" width="20" height="20" click="toggleView(event)"
                  complete="overviewbtn_complete(event)"
                  source="widgets/OverviewMap/assets/overviewbtn.swf"
                  toolTip.collapsed="{openToolTip}"
                  toolTip.expanded="{closeToolTip}" toolTipShow="bt_toolTipShowHandler(event)"/>
复制代码



本文转载源 

感谢

Jack Deng


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值