The following example shows you how you can trigger effects when the visible
property changes on a Flex container or control by using the hideEffect
and showEffect
effects.
Full code after the jump.
<?xml version="1.0" encoding="utf-8"?> <!-- http://blog.flexexamples.com/2007/09/20/triggering-effects-when-a-containers-visibility-is-changed/ --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalAlign="middle" backgroundColor="white"> <mx:Zoom id="zoom" /> <mx:ApplicationControlBar dock="true"> <mx:Button label="hide" click="panel.visible = false;" enabled="{panel.visible}" /> <mx:Button label="show" click="panel.visible = true;" enabled="{!panel.visible}" /> </mx:ApplicationControlBar> <mx:Panel id="panel" title="title" status="status" showEffect="{zoom}" hideEffect="{zoom}" width="100%" height="100%"> <mx:ControlBar> <mx:Label text="control bar" /> </mx:ControlBar> </mx:Panel> </mx:Application>
View source is enabled in the following example.
If you want to use a specific easing type (Back, Bounce, Elastic, etc), you can use the following snippet specify the easing function that will be applied to the animation:
<mx:Script> <![CDATA[ import mx.effects.easing.Bounce; ]]> </mx:Script> <mx:Zoom id="zoom" easingFunction="Bounce.easeOut" />
View source is enabled in the following example.