包 | mx.states |
类 | public class State |
继承 | State EventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
overrides
属性指定一组要添加到基本视图状态或从基本视图状态中删除的子类,以及当视图状态有效时要设置的属性、样式和事件处理函数。
可以在 Flex 组件的 states
属性中使用 State 类。只能在应用程序或自定义控件的根中指定 states
属性,而不能在子控件中指定。
可通过设置组件的 currentState
属性来启用视图状态。
The <mx:State>
tag has the following attributes:
<mx:State Properties basedOn="null" name="null" overrides="null" />
默认 MXML 属性overrides
相关 API 元素
mx.states.RemoveChild
mx.states.SetEventHandler
mx.states.SetProperty
mx.states.SetStyle
mx.states.Transition
属性 | 由以下参数定义 | ||
---|---|---|---|
basedOn : String
该视图状态所基于的视图状态的名称;如果该视图状态不是基于已命名的视图状态,则为 null。 | State | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
name : String
视图状态的名称。 | State | ||
overrides : Array
该视图状态的覆盖,表现为实现 IOverride 接口的对象的数组。 | State | ||
stateGroups : Array
此视图状态作为 String 数组所属的状态组。 | State |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | State | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
在进入视图状态后调度。 | State | |||
在即将退出视图状态之前调度。 | State |
basedOn | 属性 |
public var basedOn:String
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
该视图状态所基于的视图状态的名称;如果该视图状态不是基于已命名的视图状态,则为 null
。如果该值为 null
,则该视图状态基于根状态(包括不是使用 State 类为组件定义的属性、样式、事件处理函数和子项)。
默认值为 null。
name | 属性 |
public var name:String
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
视图状态的名称。给定组件的状态名称必须唯一。必须设置此属性。
overrides | 属性 |
public var overrides:Array
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
该视图状态的覆盖,表现为实现 IOverride 接口的对象的数组。这些覆盖在进入状态时按顺序应用,在退出状态时按相反的顺序删除。
以下 Flex 类实现 IOverride 接口,并可用来定义视图状态特性:
- AddChild
- RemoveChild
- SetEventHandler
- SetProperty
- SetStyle
overrides
属性是 State 类的默认属性。如果使用 MXML 标签语法来定义覆盖,则可以省略 <mx:overrides>
标签及其子 <mx:Array>
标签。
stateGroups | 属性 |
public var stateGroups:Array
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
此视图状态作为 String 数组所属的状态组。
State | () | 构造函数 |
enterState | 事件 |
mx.events.FlexEvent
属性 FlexEvent.type =
mx.events.FlexEvent.ENTER_STATE
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在进入视图状态后调度。
FlexEvent.ENTER_STATE
常量可为 enterState
事件定义事件对象的 type
属性值。
仅当一个或多个相关侦听器附加到调度对象时,才会调度此事件。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
exitState | 事件 |
mx.events.FlexEvent
属性 FlexEvent.type =
mx.events.FlexEvent.EXIT_STATE
语言版本: | ActionScript 3.0 |
产品版本: | Flex 3 |
运行时版本: | Flash Player 9, AIR 1.1 |
在即将退出视图状态之前调度。在删除默认视图状态的更改之前调度此事件。
FlexEvent.EXIT_STATE
常量可为 exitState
事件定义事件对象的 type
属性值。
仅当一个或多个相关侦听器附加到调度对象时,才会调度此事件。
事件对象的属性有下列值:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | 用于定义处理该事件的事件侦听器的对象。例如,如果您使用 myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。 |
target | 调度该事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。 |
Tue Jun 12 2018, 11:04 AM Z