| 包 | mx.effects |
| 类 | public class Zoom |
| 继承 | Zoom TweenEffect Effect EventDispatcher Object |
将 Zoom 效果应用到使用系统字体呈现的文本时,Flex 缩放整个磅值之间的文本。尽管将 Zoom 效果应用到文本时不必使用嵌入的字体,但将 Zoom 效果应用到嵌入的字体时,它将更加平滑。
注意:当 Container.autoLayout 属性为 false 时,Zoom 效果不起作用。
隐藏 MXML 语法The <mx:Zoom> tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<mx:Zoom
id="ID"
captureRollEvents="false|true"
originX="Calculated"
originY="Calculated"
zoomWidthFrom="0.01"
zoomWidthTo="1.0"
zoomHeightFrom="0.01"
zoomHeightTo="1.0"
/>
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
| captureRollEvents : Boolean 如果为 true,将阻止 Flex 在鼠标未发生过移动的情况下调度 rollOut 和 rollOver 事件。 | Zoom | ||
![]() | className : String [只读 (read-only)] 效果类的名称,如“Fade”。 | Effect | |
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | |
![]() | customFilter : EffectTargetFilter 指定一个 EffectTargetFilter 类型的自定义滤镜对象,效果将使用此对象来确定播放效果的目标。 | Effect | |
![]() | duration : Number 效果的持续时间(以毫秒为单位)。 | Effect | |
![]() | easingFunction : Function = null 动画的缓动函数。 | TweenEffect | |
![]() | effectTargetHost : IEffectTargetHost 一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。 | Effect | |
![]() | filter : String 指定用于过滤效果目标的算法。 | Effect | |
![]() | hideFocusRing : Boolean 确定在开始播放效果时,效果是否应隐藏对焦环。 | Effect | |
![]() | instanceClass : Class 一个 Class 类型的对象,用于指定此效果类的效果实例类。 | Effect | |
![]() | isPlaying : Boolean [只读 (read-only)] 一个只读标志,如果当前正在播放效果的任一实例,则为 true;否则,则为 false。 | Effect | |
| originX : Number 代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 x 位置的数字。 | Zoom | ||
| originY : Number 代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 y 位置的数字。 | Zoom | ||
![]() | perElementOffset : Number 在效果的第一个目标之后,其它效果目标的附加延迟(以毫秒为单位)。 | Effect | |
![]() | prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | |
![]() | relevantProperties : Array 一个属性名称 Array,执行过滤时将使用这些名称。 | Effect | |
![]() | relevantStyles : Array 一个样式名称 Array,执行过滤时将使用这些名称。 | Effect | |
![]() | repeatCount : int = 1 效果的重复次数。 | Effect | |
![]() | repeatDelay : int = 0 重复播放效果前需要等待的时间(以毫秒为单位)。 | Effect | |
![]() | startDelay : int = 0 开始播放效果前需要等待的时间(以毫秒为单位)。 | Effect | |
![]() | suspendBackgroundProcessing : Boolean = false 如果为 true,则在播放效果时阻止所有背景处理。 | Effect | |
![]() | target : Object 要应用此效果的 UIComponent 对象。 | Effect | |
![]() | targets : Array 一个 UIComponent 对象 Array,这些对象都是效果的目标。 | Effect | |
![]() | triggerEvent : Event 如果触发了某个效果,则此项目是由 EffectManager 传递给此 Effect 的 Event 对象;如果 EffectManager 当前没有播放此效果,则为 null。 | Effect | |
| zoomHeightFrom : Number 一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行高度缩放时的缩放比例。 | Zoom | ||
| zoomHeightTo : Number 一个介于 0.01 和 1.0 之间的百分比数值,代表完成高度缩放时的缩放比例。 | Zoom | ||
| zoomWidthFrom : Number 一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行宽度缩放时的缩放比例。 | Zoom | ||
| zoomWidthTo : Number 一个介于 0.01 和 1.0 之间的百分比数值,代表完成宽度缩放时的缩放比例。 | Zoom | ||
| 方法 | 定义方 | ||
|---|---|---|---|
构造函数。 | Zoom | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | |
![]() | 捕获效果目标上相关属性的当前值,并将这些值另存为结束值。 | Effect | |
![]() | 捕获另一组目标相关属性的当前值。在运行数据更改效果时,此函数由 Flex 使用。 | Effect | |
![]() | 捕获效果目标上相关属性的当前值。 | Effect | |
![]() | 创建一个效果实例并对其进行初始化。 | Effect | |
![]() | 获取一个目标对象 Array,并对每个目标调用 createInstance() 方法。 | Effect | |
![]() | 删除实例中的事件侦听器,然后从实例列表中删除该实例。 | Effect | |
![]() | 将事件调度到事件流中。 | EventDispatcher | |
![]() | 中断当前正在播放的效果,立即跳转到该效果的末尾。 | Effect | |
![]() | 返回一个字符串 Array,其中每个 String 都是被此效果更改的属性名称。 | Effect | |
![]() | 检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | |
![]() |
指示对象是否已经定义了指定的属性。 | Object | |
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | |
![]() | 暂停效果,直到调用 resume() 方法。 | Effect | |
![]() | 开始播放效果。 | Effect | |
![]() |
指示指定的属性是否存在、是否可枚举。 | Object | |
![]() | 从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | |
![]() | 在效果由 pause() 方法暂停后继续播放效果。 | Effect | |
![]() | 逆序播放效果;如果当前正在播放效果,则从该效果的当前位置开始逆序播放。 | Effect | |
![]() |
设置循环操作动态属性的可用性。 | Object | |
![]() | 停止播放效果,使效果目标保持当前状态。 | Effect | |
![]() |
返回指定对象的字符串表示形式。 | Object | |
![]() |
返回指定对象的原始值。 | Object | |
![]() | 检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher | |
| captureRollEvents | 属性 |
public var captureRollEvents:Boolean
如果为 true,将阻止 Flex 在鼠标未发生过移动的情况下调度 rollOut 和 rollOver 事件。使用 Zoom 效果在较大大小和较小大小之间切换效果目标时,将此属性设置为 true。
例如,可使用 rollOverEffect 触发 Zoom 效果来缩小目标。目标收缩后,鼠标指针将不再位于目标上方,随之触发 rollOut 事件和相应的 rollOutEffect。通过将 captureRollEvents 属性设置为 true,可以防止 Flex 调度 rollOut 事件,除非因移动鼠标发生此事件。
默认值为 false.
| originX | 属性 |
public var originX:Number代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 x 位置的数字。缩放原点是目标上作为 Zoom 效果中心的位置。
此值必须介于 0 和目标组件的宽度之间。
默认值为target.width / 2,这是目标的中心。
| originY | 属性 |
public var originY:Number代表当效果目标位于支持绝对定位的容器(如 Canvas 容器)中时缩放原点 y 位置的数字。缩放原点是目标上作为 Zoom 效果中心的位置。
此值必须介于 0 和目标组件的高度之间。
默认值为target.height / 2,此位置是目标的中心。
| zoomHeightFrom | 属性 |
public var zoomHeightFrom:Number一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行高度缩放时的缩放比例。默认值为 0.01,此时显示的高度非常小。
| zoomHeightTo | 属性 |
public var zoomHeightTo:Number一个介于 0.01 和 1.0 之间的百分比数值,代表完成高度缩放时的缩放比例。默认值为 1.0,此时对象显示为正常高度。
| zoomWidthFrom | 属性 |
public var zoomWidthFrom:Number一个介于 0.01 和 1.0 之间的百分比数值,代表开始进行宽度缩放时的缩放比例。默认值为 0.01,此时显示的宽度非常小。
| zoomWidthTo | 属性 |
public var zoomWidthTo:Number一个介于 0.01 和 1.0 之间的百分比数值,代表完成宽度缩放时的缩放比例。默认值为 1.0,此时对象显示为正常宽度。
| Zoom | () | 构造函数 |
public function Zoom(target:Object = null)构造函数。
参数target:Object (default = null) — 要使用此效果为其设置动画的 Object。 |
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the Zoom effect. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import flash.events.MouseEvent;
public function doZoom(event:MouseEvent):void {
if (zoomAll.isPlaying) {
zoomAll.reverse();
}
else {
// If this is a ROLL_OUT event, play the effect backwards.
// If this is a ROLL_OVER event, play the effect forwards.
zoomAll.play([event.target], event.type == MouseEvent.ROLL_OUT ? true : false);
}
}
]]>
</mx:Script>
<mx:Zoom id="zoomAll" zoomWidthTo="1" zoomHeightTo="1" zoomWidthFrom=".5" zoomHeightFrom=".5" />
<mx:Panel title="Zoom Effect Example" width="95%" height="95%" horizontalAlign="center"
paddingTop="5" paddingLeft="10" paddingRight="10" paddingBottom="5">
<mx:Text width="100%" color="blue"
text="Move the mouse over the image to enlarge it. Move the mouse off of the image to shrink it."/>
<mx:Image id="img"
source="@Embed(source='assets/Nokia_6630.png')"
scaleX=".5" scaleY=".5"
rollOver="doZoom(event)"
rollOut="doZoom(event)"/>
</mx:Panel>
</mx:Application>