Flex - Effect
简介
Effect 类是一个抽象基类,它定义了所有 Flex 效果的基本功能。Effect 类定义了所有效果的基工厂类。EffectInstance 类定义了所有效果实例子类的基类。
类声明
以下是 mx.effects.Effect 类的声明 −
public class Effect extends EventDispatcher implements IEffect
公共属性
Sr.No | 属性 &描述 |
---|---|
1 | className : String [只读] 效果类的名称,例如"Fade"。 |
2 | customFilter : mx.effects:EffectTargetFilter 指定 EffectTargetFilter 类型的自定义过滤器对象,效果使用该对象来确定要播放效果的目标。 |
3 | duration : Number 效果的持续时间(以毫秒为单位)。 |
4 | effectTargetHost : mx.effects:IEffectTargetHost 此属性允许您访问数据效果的目标列表控件。 |
5 | filter : String 指定用于筛选效果目标的算法。 |
6 | hideFocusRing : Boolean 确定效果在启动时是否应隐藏焦点环。 |
7 | instanceClass : Class 一个 Class 类型的对象,用于指定此效果类的效果实例类。 |
8 | isPlaying : Boolean [只读] 一个只读标志,如果当前正在播放效果的任何实例,则为 true,如果没有,则为 false。 |
9 | perElementOffset : Number 效果的第一个目标之后的效果目标的额外延迟(以毫秒为单位)。 |
10 | playheadTime : Number 效果的当前时间位置效果。 |
11 | relevantProperties : Array 执行过滤时要使用的属性名称数组。 |
12 | relevantStyles : Array 执行过滤时要使用的样式名称数组。 |
13 | repeatCount : int = 1 重复效果的次数。 |
14 | repeatDelay : int = 0 重复效果前等待的时间(以毫秒为单位)。 |
15 | startDelay : int = 0 开始效果前等待的时间(以毫秒为单位)。 |
16 | suspendBackgroundProcessing : Boolean = false 如果为 true,则在播放效果时阻止所有后台处理。 |
17 | target :对象 应用此效果的对象。 |
18 | targets:数组 效果的目标对象数组。 |
19 | triggerEvent:事件 触发效果时,EffectManager 传递给此 Effect 的 Event 对象,如果 EffectManager 未播放该效果,则为 null。 |
受保护的属性
Sr.No | 属性 &描述 |
---|---|
1 | applyTransitionEndProperties : Boolean 此标志控制效果在过渡中运行时是否根据结束状态自动应用属性值,而不是保留效果本身设置的值。 |
2 | endValuesCaptured : Boolean = false 如果效果的结束值已经确定,则包含 true 的标志;如果应在效果运行时从效果目标的当前属性中获取这些值,则包含 false 的标志。 |
公共方法
Sr.No | 方法 &描述 |
---|---|
1 | Effect(target:Object = null) 构造函数。 |
2 | captureEndValues():void 捕获效果目标上相关属性的当前值并将其保存为最终值。 |
3 | captureMoreStartValues(targets:Array):void 捕获一组附加目标的相关属性的当前值 Flex 在运行数据更改效果时使用此函数。 |
4 | captureStartValues():void 捕获效果目标上相关属性的当前值。 |
5 | createInstance(target:Object = null):IEffectInstance 创建一个效果实例并初始化它。 |
6 | createInstances(targets:Array = null):Array 获取目标对象数组并在每个目标上调用 createInstance() 方法。 |
7 | deleteInstance(instance:IEffectInstance):void 从实例中删除事件侦听器并将其从实例列表中删除。 |
8 | end(effectInstance:IEffectInstance = null):void 中断当前正在播放的效果,并立即跳转到效果的结尾。 |
9 | getAffectedProperties():Array 返回一个字符串数组,其中每个字符串都是此效果更改的属性的名称。 |
10 | pause():void 暂停效果,直到您调用 resume() 方法。 |
11 | play(targets:Array = null, playReversedFromEnd:Boolean = false):Array 开始播放效果。 |
12 | resume():void 通过调用 pause() 方法暂停效果后恢复效果。 |
13 | reverse():void 如果效果当前正在播放,则从效果的当前位置开始反向播放效果。 |
14 | stop():void 停止效果,使效果目标保持当前状态。 |
受保护的方法
Sr.No | 方法 &描述 |
---|---|
1 | applyValueToTarget(target:Object, property:String, value:*, props:Object):void 由 Effect 基础结构内部使用。 |
2 | effectEndHandler(event:EffectEvent):void 效果实例播放完毕时调用。 |
3 | effectStartHandler(event:EffectEvent):void 效果实例开始播放时调用此方法。 |
4 | effectStopHandler(event:EffectEvent):void 当效果实例通过调用 stop() 方法停止时调用。 |
5 | filterInstance(propChanges:Array, target:Object):Boolean 确定过滤掉效果实例的逻辑。 |
6 | getValueFromTarget(target:Object, property:String):* 由 captureStartValues() 方法调用,以从目标获取属性的值。 |
7 | initInstance(instance:IEffectInstance):void 将效果的属性复制到效果实例。 |
事件
Sr.No | 事件 &描述 |
---|---|
1 | effectEnd 当效果的某个实例播放完毕时分派,无论是当实例播放完毕还是当效果被调用 end() 方法中断时。 |
2 | effectStart 当效果开始播放时分派。 |
3 | effectStop 当效果停止时分派,仅当效果被调用 stop() 方法中断时才会发生。 |
方法继承
此类从以下类继承方法 −
- flash.events.EventDispatcher
- Object