ActionScript® 3.0 Reference for the Adobe® Flash® Platform
Home  |  Show Packages and Classes List |  Packages  |  Classes  |  What's New  |  Index  |  Appendixes
spark.effects 

Animate  - AS3 Flex

Packagespark.effects
Classpublic class Animate
InheritanceAnimate Inheritance Effect Inheritance EventDispatcher Inheritance Object
Subclasses AnimateColor, AnimateFilter, AnimateTransform, AnimateTransitionShader, Fade, Resize

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

This Animate effect animates an arbitrary set of properties between values. Specify the properties and values to animate by setting the motionPaths property.

MXML SyntaxexpandedHide MXML Syntax

The <s:Animate> tag inherits all of the tag attributes of its superclass, and adds the following tag attributes:

  <s:Animate
    Properties
    id="ID"
    disableLayout="false"
    easer="{spark.effects.easing.Sine(.5)}"
    interpolator="NumberInterpolator"
    motionPaths="no default"
    repeatBehavior="loop"
  />
  

Default MXML PropertymotionPaths

View the examples

More examples

Learn more

Related API Elements



Public Properties
 PropertyDefined By
 InheritedclassName : String
[read-only] The name of the effect class, such as "Fade".
Effect
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
 InheritedcustomFilter : mx.effects:EffectTargetFilter
Specifies a custom filter object, of type EffectTargetFilter, used by the effect to determine the targets on which to play the effect.
Effect
  disableLayout : Boolean
If true, the effect disables layout on its targets' parent containers, setting the containers autoLayout property to false, and also disables any layout constraints on the target objects.
Animate
 Inheritedduration : Number
Duration of the effect in milliseconds.
Effect
  easer : IEaser
The easing behavior for this effect.
Animate
 InheritedeffectTargetHost : mx.effects:IEffectTargetHost
A property that lets you access the target list-based control of a data effect.
Effect
 Inheritedfilter : String
Specifies an algorithm for filtering targets for an effect.
Effect
 InheritedhideFocusRing : Boolean
Determines whether the effect should hide the focus ring when starting the effect.
Effect
 InheritedinstanceClass : Class
An object of type Class that specifies the effect instance class class for this effect class.
Effect
  interpolator : IInterpolator
The interpolator used by this effect to calculate values between the start and end values of a property.
Animate
 InheritedisPlaying : Boolean
[read-only] A read-only flag which is true if any instances of the effect are currently playing, and false if none are.
Effect
  motionPaths : Vector.<MotionPath>
A Vector of MotionPath objects, each of which holds the name of a property being animated and the values that the property takes during the animation.
Animate
 InheritedperElementOffset : Number
Additional delay, in milliseconds, for effect targets after the first target of the effect.
Effect
 InheritedplayheadTime : Number
Current time position of the effect.
Effect
 InheritedrelevantProperties : Array
An Array of property names to use when performing filtering.
Effect
 InheritedrelevantStyles : Array
An Array of style names to use when performing filtering.
Effect
  repeatBehavior : String
The behavior of a repeating effect, which means an effect with repeatCount equal to either 0 or > 1.
Animate
 InheritedrepeatCount : int = 1
Number of times to repeat the effect.
Effect
 InheritedrepeatDelay : int = 0
Amount of time, in milliseconds, to wait before repeating the effect.
Effect
 InheritedstartDelay : int = 0
Amount of time, in milliseconds, to wait before starting the effect.
Effect
 Inheritedtarget : Object
The object to which this effect is applied.
Effect
 Inheritedtargets : Array
An Array of objects that are targets for the effect.
Effect
 InheritedtriggerEvent : Event
The Event object passed to this Effect by the EffectManager when an effect is triggered, or null if the effect is not being played by the EffectManager.
Effect
Protected Properties
 PropertyDefined By
 InheritedapplyTransitionEndProperties : Boolean
This flag controls whether the effect, when run in a transition, automatically applies the property values according to the end state, as opposed to leaving values as set by the effect itself.
Effect
 InheritedendValuesCaptured : Boolean = false
A flag containing true if the end values of an effect have already been determined, or false if they should be acquired from the current properties of the effect targets when the effect runs.
Effect
Public Methods
 MethodDefined By
  
Animate(target:Object = null)
Constructor.
Animate
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
 Inherited
Captures the current values of the relevant properties on the effect's targets and saves them as end values.
Effect
 Inherited
Captures the current values of the relevant properties of an additional set of targets Flex uses this function when a data change effect is run.
Effect
 Inherited
Captures the current values of the relevant properties on the effect's targets.
Effect
 Inherited
Creates a single effect instance and initializes it.
Effect
 Inherited
createInstances(targets:Array = null):Array
Takes an Array of target objects and invokes the createInstance() method on each target.
Effect
 Inherited
Removes event listeners from an instance and removes it from the list of instances.
Effect
 Inherited
Dispatches an event into the event flow.
EventDispatcher
 Inherited
end(effectInstance:IEffectInstance = null):void
Interrupts an effect that is currently playing, and jumps immediately to the end of the effect.
Effect
 Inherited
Returns an Array of Strings, where each String is the name of a property changed by this effect.
Effect
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Pauses the effect until you call the resume() method.
Effect
 Inherited
play(targets:Array = null, playReversedFromEnd:Boolean = false):Array
Begins playing the effect.
Effect
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
 Inherited
Resumes the effect after it has been paused by a call to the pause() method.
Effect
 Inherited
Plays the effect in reverse, if the effect is currently playing, starting from the current position of the effect.
Effect
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Stops the effect, leaving the effect targets in their current state.
Effect
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Protected Methods
 MethodDefined By
 Inherited
applyValueToTarget(target:Object, property:String, value:*, props:Object):void
Used internally by the Effect infrastructure.
Effect
 Inherited
Called when an effect instance has finished playing.
Effect
 Inherited
This method is called when the effect instance starts playing.
Effect
 Inherited
Called when an effect instance has stopped by a call to the stop() method.
Effect
 Inherited
filterInstance(propChanges:Array, target:Object):Boolean
Determines the logic for filtering out an effect instance.
Effect
 Inherited
getValueFromTarget(target:Object, property:String):*
Called by the captureStartValues() method to get the value of a property from the target.
Effect
 Inherited
Copies properties of the effect to the effect instance.
Effect
Events
 Event Summary Defined By
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
 InheritedDispatched when one of the effect's instances finishes playing, either when the instance finishes playing or when the effect is interrupted by a call to the end() method.Effect
  Dispatched when the effect begins a new repetition, for any effect that is repeated more than once.Animate
 InheritedDispatched when the effect starts playing.Effect
 InheritedDispatched when the effect has been stopped, which only occurs when the effect is interrupted by a call to the stop() method.Effect
  Dispatched every time the effect updates the target.Animate
Property Detail

disableLayout

property
disableLayout:Boolean

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

If true, the effect disables layout on its targets' parent containers, setting the containers autoLayout property to false, and also disables any layout constraints on the target objects. These properties are restored when the effect finishes.

The default value is false.



Implementation
    public function get disableLayout():Boolean
    public function set disableLayout(value:Boolean):void

easer

property 
easer:IEaser

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

The easing behavior for this effect. This IEaser object is used to convert the elapsed fraction of the animation into an eased fraction, which is then used to calculate the value at that eased elapsed fraction.

Note that it is possible to have easing at both the effect level and the Keyframe level (where Keyframes hold the values/times used in the MotionPath structures). These easing behaviors build on each other. The easer controls the easing of the overall effect. The Keyframe controls the easing in any particular interval of the animation. By default, the easing for Animate is non-linear (Sine(.5)). The easing for Keyframes is linear. If you desire an effect with easing at the keyframe level instead, you can set the easing of the effect to linear, and then set the easing specifically on the Keyframes.

The default value is spark.effects.easing.Sine(.5).



Implementation
    public function get easer():IEaser
    public function set easer(value:IEaser):void

Related API Elements

interpolator

property 
interpolator:IInterpolator

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

The interpolator used by this effect to calculate values between the start and end values of a property. By default, the NumberInterpolator class handles interpolation or, in the case of the start and end values being Arrays or Vectors, by the MultiValueInterpolator class. Interpolation of other types, or of Numbers that should be interpolated differently, such as uint values that hold color channel information, can be handled by supplying a different interpolator.



Implementation
    public function get interpolator():IInterpolator
    public function set interpolator(value:IInterpolator):void

Related API Elements

motionPaths

property 
motionPaths:Vector.<MotionPath>

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

A Vector of MotionPath objects, each of which holds the name of a property being animated and the values that the property takes during the animation. This Vector takes precedence over any properties declared in subclasses of Animate. For example, if this Array is set directly on a Move effect, then any properties of the Move effect, such as xFrom, are ignored.



Implementation
    public function get motionPaths():Vector.<MotionPath>
    public function set motionPaths(value:Vector.<MotionPath>):void

repeatBehavior

property 
repeatBehavior:String

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

The behavior of a repeating effect, which means an effect with repeatCount equal to either 0 or > 1. This value should be either RepeatBehavior.LOOP, which means the animation repeats in the same order each time, or RepeatBehavior.REVERSE, which means the animation reverses direction on each iteration.

The default value is RepeatBehavior.LOOP.



Implementation
    public function get repeatBehavior():String
    public function set repeatBehavior(value:String):void
Constructor Detail

Animate

()Constructor
public function Animate(target:Object = null)

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

Constructor.

Parameters
target:Object (default = null) — The Object to animate with this effect.
Event Detail

effectRepeat

Event
Event Object Type: mx.events.EffectEvent
property EffectEvent.type = mx.events.EffectEvent.EFFECT_REPEAT

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

Dispatched when the effect begins a new repetition, for any effect that is repeated more than once. Flex also dispatches an effectUpdate event for the effect at the same time.

The EffectEvent.EFFECT_REPEAT constant defines the value of the type property of the event object for an effectRepeat event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
effectInstanceThe effect instance object for the event.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

effectUpdate

Event  
Event Object Type: mx.events.EffectEvent
property EffectEvent.type = mx.events.EffectEvent.EFFECT_UPDATE

Language Version: ActionScript 3.0
Product Version: Flex 4
Runtime Versions: Flash Player 10, AIR 1.5

Dispatched every time the effect updates the target.

The EffectEvent.EFFECT_UPDATE constant defines the value of the type property of the event object for an effectUpdate event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
effectInstanceThe effect instance object for the event.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
AnimateEffectExample.mxml
<?xml version="1.0"?>
<s:Application
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:mx="library://ns.adobe.com/flex/mx"
    xmlns:s="library://ns.adobe.com/flex/spark">

    <fx:Declarations>
        <s:Animate id="animateEffect"
            target="{targetBox}" repeatCount="2" repeatBehavior="reverse" disableLayout="true" effectStart="playButton.enabled=false" effectEnd="playButton.enabled=true;">
            <s:motionPaths>
                <s:SimpleMotionPath property="x" valueFrom="0" valueTo="100"/>
                <s:SimpleMotionPath property="alpha" valueFrom="1" valueTo="0"/>
            </s:motionPaths>
        </s:Animate>
    </fx:Declarations>

    <s:Panel title="Animate Effect Example"
        width="75%" height="75%">

        <mx:HBox width="100%" height="100%">
            <!-- Our target to affect-->
            <mx:VBox id="targetBox" width="50%"  horizontalAlign="center">
                <mx:Label text="Nokia 9930" />
                <mx:Image id="targetImg" source="@Embed(source='assets/Nokia_6630.png')"/>
            </mx:VBox>
            <mx:VBox id="detailsBox" width="50%" left="0">
                <mx:Text width="99%" color="blue"
                    text="The Animate effect animates any property or style of an object over time using animationProperty arrays. Click 'Animate' to watch the effect."/>
            </mx:VBox>
        </mx:HBox>

        <s:Rect left="0" right="0" bottom="0" height="30">
            <s:fill>
                <s:LinearGradient rotation="90">
                    <s:GradientEntry color="0xE2E2E2" />
                    <s:GradientEntry color="0xD9D9D9" />
                </s:LinearGradient>
            </s:fill>
        </s:Rect>
        <s:Button id="playButton"
            left="5" bottom="5"
            label="Animate"
            click="animateEffect.play();"/>
    </s:Panel>
</s:Application>