包 | mx.effects |
类 | public class EffectInstance |
继承 | EffectInstance EventDispatcher Object |
实现 | IEffectInstance |
子类 | ActionEffectInstance, CompositeEffectInstance, MaskEffectInstance, SoundEffectInstance, TweenEffectInstance |
效果开发人员必须为其自定义效果创建实例类。
另请参见
属性 | 定义方 | ||
---|---|---|---|
className : String [只读 (read-only)] 效果类的名称,如“FadeInstance”。 | EffectInstance | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
duration : Number 效果的持续时间(以毫秒为单位)。 | EffectInstance | ||
effect : IEffect 创建此 IEffectInstance 对象的 IEffect 对象。 | EffectInstance | ||
effectTargetHost : IEffectTargetHost 一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。 | EffectInstance | ||
hideFocusRing : Boolean 确定在开始播放效果时,效果是否应隐藏对焦环。 | EffectInstance | ||
playheadTime : Number [只读 (read-only)] 播放效果时所处的当前位置。 | EffectInstance | ||
propertyChanges : PropertyChanges 指定包含一组属性的初始值和结束值的 PropertyChanges 对象,这些属性与效果的目标相关。 | EffectInstance | ||
prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | ||
repeatCount : int 效果的重复次数。 | EffectInstance | ||
repeatDelay : int 重复播放效果前需要等待的时间(以毫秒为单位)。 | EffectInstance | ||
startDelay : int 开始播放效果前需要等待的时间(以毫秒为单位)。 | EffectInstance | ||
suspendBackgroundProcessing : Boolean 如果为 true,则在播放效果时阻止所有背景处理。 | EffectInstance | ||
target : Object 要应用此效果的 UIComponent 对象。 | EffectInstance | ||
triggerEvent : Event 触发播放效果的事件(如果有)。 | EffectInstance |
方法 | 定义方 | ||
---|---|---|---|
EffectInstance(target:Object) 构造函数。 | EffectInstance | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
中断当前播放的效果实例,立即跳转到效果的结束位置。 | EffectInstance | ||
在完成效果播放时由 end() 方法调用。 | EffectInstance | ||
每次完成重复效果的迭代播放后调用。 | EffectInstance | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
指示对象是否已经定义了指定的属性。 | Object | ||
如果由 EffectManager 触发效果,则会调用此方法。 | EffectInstance | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
暂停效果,直到调用 resume() 方法。 | EffectInstance | ||
在目标上播放效果实例。 | EffectInstance | ||
指示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
在效果由 pause() 方法暂停后继续播放效果。 | EffectInstance | ||
从效果的当前位置开始反向播放效果。 | EffectInstance | ||
设置循环操作动态属性的可用性。 | Object | ||
经过 startDelay 所占用的这段时间后,在目标上播放效果实例。 | EffectInstance | ||
停止播放效果,使目标保持当前状态。 | EffectInstance | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher |
className | 属性 |
className:String
[只读 (read-only)]
效果类的名称,如 "FadeInstance"
。
这是一个短类名称或“非限定”类名称,不包含包名称。如果需要限定名称,可使用 flash.utils 包中的 getQualifiedClassName()
方法。
public function get className():String
duration | 属性 |
duration:Number
[读写] 效果的持续时间(以毫秒为单位)。
public function get duration():Number
public function set duration(value:Number):void
effect | 属性 |
effect:IEffect
[读写] 创建此 IEffectInstance 对象的 IEffect 对象。
public function get effect():IEffect
public function set effect(value:IEffect):void
effectTargetHost | 属性 |
effectTargetHost:IEffectTargetHost
[读写] 一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。通过设置此属性,效果类的实例将能够访问播放此效果的基于列表的控件。
public function get effectTargetHost():IEffectTargetHost
public function set effectTargetHost(value:IEffectTargetHost):void
hideFocusRing | 属性 |
hideFocusRing:Boolean
[读写] 确定在开始播放效果时,效果是否应隐藏对焦环。效果目标负责隐藏对焦环。UIComponent 类的子类将自动隐藏对焦环。如果效果目标不是 UIComponent 类的子类,则必须向其添加隐藏对焦环的功能。
将此属性设置为 true
可在播放效果期间隐藏对焦环。
对于 Effect 的子类,默认值是 false
。对于 MaskEffect 的子类,默认值是 true
。
public function get hideFocusRing():Boolean
public function set hideFocusRing(value:Boolean):void
playheadTime | 属性 |
playheadTime:Number
[只读 (read-only)]
播放效果时所处的当前位置。此属性的值介于 0 和实际持续时间(包括 startDelay
、repeatCount
和 repeatDelay
属性的值)之间。
public function get playheadTime():Number
propertyChanges | 属性 |
propertyChanges:PropertyChanges
[读写]
指定包含一组属性的初始值和结束值的 PropertyChanges 对象,这些属性与效果的目标相关。只有对创建此效果实例的效果调用 captureStartValues()
方法时,才设置此属性。
通常使用 propertyChanges
属性创建转移过程中使用的效果。Flex 会在开始转移时自动调用 captureStartValues()
方法。在覆盖 Effectinstance.play()
方法的过程中,您可以检查 propertyChanges()
方法中的信息,以初始化效果的起始值和结束值。
public function get propertyChanges():PropertyChanges
public function set propertyChanges(value:PropertyChanges):void
另请参见
repeatCount | 属性 |
repeatCount:int
[读写] 效果的重复次数。可能值为任何大于等于 0 的整数。
public function get repeatCount():int
public function set repeatCount(value:int):void
repeatDelay | 属性 |
repeatDelay:int
[读写] 重复播放效果前需要等待的时间(以毫秒为单位)。
public function get repeatDelay():int
public function set repeatDelay(value:int):void
startDelay | 属性 |
startDelay:int
[读写]
开始播放效果前需要等待的时间(以毫秒为单位)。此值可以是任何大于或等于 0 的整数。如果使用 repeatCount
属性重复播放效果,则只在首次播放该效果时应用 startDelay
属性。
public function get startDelay():int
public function set startDelay(value:int):void
suspendBackgroundProcessing | 属性 |
suspendBackgroundProcessing:Boolean
[读写]
如果为 true
,则在播放效果时阻止所有背景处理。背景处理包括度量、布局和处理来自服务器的响应。
public function get suspendBackgroundProcessing():Boolean
public function set suspendBackgroundProcessing(value:Boolean):void
target | 属性 |
target:Object
[读写] 要应用此效果的 UIComponent 对象。
public function get target():Object
public function set target(value:Object):void
triggerEvent | 属性 |
triggerEvent:Event
[读写] 触发播放效果的事件(如果有)。如果要将一个效果分配给多个触发事件,此属性非常有用。
如果通过调用 play()
方法以编程方式播放(而非由某个事件触发)该效果,则此属性将为 null
。
public function get triggerEvent():Event
public function set triggerEvent(value:Event):void
EffectInstance | () | 构造函数 |
end | () | 方法 |
public function end():void
中断当前播放的效果实例,立即跳转到效果的结束位置。通过调用 Effect.end()
方法可调用此方法。在实现过程中,它会调用 finishEffect()
方法。
如果调用此方法来结束播放效果,效果实例将调度 effectEnd
事件。
在 EffectInstance 的子类中,您可以在进行覆盖时顺便覆盖此方法,并应在完成您的逻辑之后从覆盖的结束位置调用 super.end()
方法。
另请参见
finishEffect | () | 方法 |
public function finishEffect():void
在完成效果播放时由 end()
方法调用。此函数将为效果目标调度 endEffect
事件。
您不必在子类中覆盖此方法。在使用效果时无需调用此方法,但在创建效果子类时可能需要调用此方法。
finishRepeat | () | 方法 |
initEffect | () | 方法 |
public function initEffect(event:Event):void
如果由 EffectManager 触发效果,则会调用此方法。此基类版本会将触发效果的事件保存在 triggerEvent
属性中。每个子类都应该覆盖此方法。
参数
event:Event — 为触发效果而调度的 Event 对象。例如,如果触发器是 mouseDownEffect,则事件可能是类型等效于 MouseEvent.MOUSEDOWN 的 MouseEvent。 |
pause | () | 方法 |
public function pause():void
暂停效果,直到调用 resume()
方法。
play | () | 方法 |
public function play():void
在目标上播放效果实例。改为调用 startEffect()
方法,以在 EffectInstance 上开始播放效果。
在 EffectInstance 的子类中,必须覆盖此方法。此覆盖必须调用 super.play()
方法,以便从目标中调度 effectStart
事件。
另请参见
resume | () | 方法 |
public function resume():void
在效果由 pause()
方法暂停后继续播放效果。
reverse | () | 方法 |
public function reverse():void
从效果的当前位置开始反向播放效果。
startEffect | () | 方法 |
public function startEffect():void
经过 startDelay
所占用的这段时间后,在目标上播放效果实例。由 Effect 类调用。在启动 EffectInstance 时,请使用此函数,而非 play()
方法。
stop | () | 方法 |
public function stop():void
停止播放效果,使目标保持当前状态。您需要通过调用 Effect.stop()
方法来调用此方法。在实现过程中,它会调用 finishEffect()
方法。
如果调用此方法来结束播放效果,效果实例将调度 effectEnd
事件。