包 | spark.effects.animation |
类 | public final class Animation |
继承 | Animation Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
此类定义动画的计时部分和值部分。其他代码(在效果中或在应用程序代码中)使动画与目标对象和属性相关联,这样接着可以将由 Animation 类产生的动画值应用到目标对象和属性,以实际使这些对象设置动画。
定义动画效果时,您通常会创建 Animate 类的一个实例,或者创建 Animate 子类的一个实例。这会使用 play()
方法创建一个 Animation 实例。Animation 实例接受开始和结束值、一个持续时间和可选参数(如 easer 和 interpolator 对象)。
在动画开始和结束时,当动画重复时,以及在动画播放过程中的定期更新时间间隔处,Animation 对象会调用事件侦听器。这些调用传递 Animation 实例从开始和结束值以及 easer 和 interpolator 对象计算出来的值。接着可以将这些值用于在目标对象上设置属性值。
默认 MXML 属性motionPaths
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
animationTarget : spark.effects.animation:IAnimationTarget
使用此动画的所有 start、end、repeat 和 update 事件通知的 IAnimationTarget 对象。 | Animation | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentValue : Object
直到 Animation 的当前帧,包含计算的值的对象。 | Animation | ||
cycleFraction : Number [只读]
在已应用缓动之后,在动画中已过去的当前部分。 | Animation | ||
cycleTime : Number [只读]
在当前周期动画中的当前毫秒位置。 | Animation | ||
duration : Number = 500
动画的时长(以毫秒为单位),不计算由 repeatCount 属性定义的任何重复。 | Animation | ||
easer : IEaser
此效果的缓动行为。 | Animation | ||
interpolator : IInterpolator = null
Animation 实例所用的插补器,用于计算属性的开始值和结束值之间的值。 | Animation | ||
isPlaying : Boolean [只读]
如果为 true,则表示当前正在播放动画。 | Animation | ||
motionPaths : Vector.<MotionPath>
MotionPath 对象集,它定义随着时间的推移 Animation 将设置动画的属性和值。 | Animation | ||
playheadTime : Number
动画的总计已过去时间,包括任何开始延迟和重复。 | Animation | ||
playReversed : Boolean
如果为 true,则反向播放动画。 | Animation | ||
repeatBehavior : String
设置重复动画的行为。 | Animation | ||
repeatCount : int
此动画重复的次数。 | Animation | ||
repeatDelay : Number
在每次重复循环开始之前延迟的时间数量(以毫秒为单位)。 | Animation | ||
startDelay : Number
在动画开始之前等待的时间数量。 | Animation |
方法 | 由以下参数定义 | ||
---|---|---|---|
Animation(duration:Number = 500, property:String = null, startValue:Object = null, endValue:Object = null)
构造函数。 | Animation | ||
中断动画,立即跳到动画的结尾,并对 animationTarget 调用 animationEnd() 函数。 | Animation | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
在调用 resume() 方法之前暂停该效果。 | Animation | ||
开始动画。 | Animation | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
在效果由 pause() 方法暂停后继续播放效果。 | Animation | ||
设置循环操作动态属性的可用性。 | Object | ||
停止播放动画,且结束时不调用 end() 方法。 | Animation | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object |
animationTarget | 属性 |
animationTarget:spark.effects.animation:IAnimationTarget
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
使用此动画的所有 start、end、repeat 和 update 事件通知的 IAnimationTarget 对象。值 null
指示不存在要通知的目标。
默认值为 null。
实现
public function get animationTarget():spark.effects.animation:IAnimationTarget
public function set animationTarget(value:spark.effects.animation:IAnimationTarget):void
currentValue | 属性 |
public var currentValue:Object
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
直到 Animation 的当前帧,包含计算的值的对象。会使用属性名作为键,将这些值存储为 map 值。
cycleFraction | 属性 |
cycleTime | 属性 |
duration | 属性 |
public var duration:Number = 500
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
动画的时长(以毫秒为单位),不计算由 repeatCount
属性定义的任何重复。
默认值为 500。
easer | 属性 |
easer:IEaser
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
此效果的缓动行为。此 IEaser 对象用于将动画的已过去部分转换为缓动部分,随后缓动部分将用于计算该缓动的已过去部分的值。
值 null
意味着不使用缓动,这等同于使用一种 Linear 缓动,或者 animation.easer = Linear.getInstance();
。
默认值为 Sine(.5)。
实现
public function get easer():IEaser
public function set easer(value:IEaser):void
interpolator | 属性 |
public var interpolator:IInterpolator = null
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
Animation 实例所用的插补器,用于计算属性的开始值和结束值之间的值。默认情况下,该类使用 NumberInterpolator 类,或者在开始值和结束值为数组或 Vector 的情况下,该类使用 NumberInterpolator 类。其他数据类型的插值,或者应该以不同的方式插补的 Number(如包含颜色通道信息的 uint
值)的插值,可以通过提供不同的插补器来处理。
相关 API 元素
isPlaying | 属性 |
motionPaths | 属性 |
public var motionPaths:Vector.<MotionPath>
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
MotionPath 对象集,它定义随着时间的推移 Animation 将设置动画的属性和值。
相关 API 元素
playheadTime | 属性 |
playReversed | 属性 |
repeatBehavior | 属性 |
repeatBehavior:String
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
设置重复动画的行为。重复动画已将 repeatCount
属性设置为 0 或某个大于 1 的值。此值应该为 RepeatBehavior.LOOP
(意味着每次动画按相同的顺序重复)或 RepeatBehavior.REVERSE
(意味着对于每个迭代,动画都倒转方向)。
默认值为 RepeatBehavior.LOOP。
实现
public function get repeatBehavior():String
public function set repeatBehavior(value:String):void
相关 API 元素
repeatCount | 属性 |
repeatDelay | 属性 |
repeatDelay:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
在每次重复循环开始之前延迟的时间数量(以毫秒为单位)。将此值设置为一个非零数字会恰好在其结束值处结束上一个动画循环。但是,不延迟的重复可能会完全跳过该值,因为动画会从在一个循环的结尾附近平滑地过渡到越过下一个循环的开始处。必须将此属性设置为大于等于 0 的一个值。
此属性用于在第一次动画循环之后的第一次重复。要延迟动画的第一次循环,请使用 startDelay
属性。
默认值为 0。
实现
public function get repeatDelay():Number
public function set repeatDelay(value:Number):void
相关 API 元素
startDelay | 属性 |
Animation | () | 构造函数 |
public function Animation(duration:Number = 500, property:String = null, startValue:Object = null, endValue:Object = null)
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
构造函数。可选 property
、startValue
和 endValue
参数使用有两个 Keyframe 的单个 MotionPath 对象定义一个简单的动画。任一值为非 null 时,startValue
在 time=0 处成为第一个关键帧的 value
,而 endValue
在动画的结尾成为第二个关键帧的 value
。
duration:Number (default = 500 ) — 动画的长度(以毫秒为单位)。
| |
property:String (default = null ) — 要设置动画的属性。
| |
startValue:Object (default = null ) — 属性的初始值。
| |
endValue:Object (default = null ) — 属性的最终值。
|
end | () | 方法 |
public function end():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
中断动画,立即跳到动画的结尾,并对 animationTarget
调用 animationEnd() 函数。
pause | () | 方法 |
public function pause():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
在调用 resume()
方法之前暂停该效果。如果在 resume()
之前调用 stop()
,则无法继续该动画。
play | () | 方法 |
public function play():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
开始动画。如果动画已在播放,则会首先停止它,然后播放它。
resume | () | 方法 |
public function resume():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
在效果由 pause()
方法暂停后继续播放效果。
stop | () | 方法 |
public function stop():void
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
停止播放动画,且结束时不调用 end()
方法。将对 animationTarget
调用 animationStop() 函数。
Tue Jun 12 2018, 11:04 AM Z