Adobe® Flex® 4 Language Reference
Hide Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
mx.states 
State 
Packagemx.states
Classpublic class State
InheritanceState Inheritance EventDispatcher Inheritance Object

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The State class defines a view state, a particular view of a component. For example, a product thumbnail could have two view states; a base view state with minimal information, and a rich view state with additional information. The overrides property specifies a set of child classes to add or remove from the base view state, and properties, styles, and event handlers to set when the view state is in effect.

You use the State class in the states property of Flex components. You can only specify a states property at the root of an application or a custom control, not on child controls.

You enable a view state by setting a component's currentState property.

MXML SyntaxexpandedHide MXML Syntax

The <mx:State> tag has the following attributes:

  <mx:State
  Properties
  basedOn="null"
  name="null"
  overrides="null"
  />
  

Default MXML Propertyoverrides

See also



Public Properties
 PropertyDefined By
  basedOn : String
The name of the view state upon which this view state is based, or null if this view state is not based on a named view state.
State
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  name : String
The name of the view state.
State
  overrides : Array
The overrides for this view state, as an Array of objects that implement the IOverride interface.
State
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
  stateGroups : Array
The state groups that this view state belongs to as an array of String.
State
Public Methods
 MethodDefined By
  
State(properties:Object = null)
Constructor.
State
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
 Inherited
Dispatches an event into the event flow.
EventDispatcher
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Events
 Event Summary Defined By
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
  Dispatched after a view state has been entered.State
  Dispatched just before a view state is exited.State
Property Detail

basedOn

property
public var basedOn:String

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The name of the view state upon which this view state is based, or null if this view state is not based on a named view state. If this value is null, the view state is based on a root state that consists of the properties, styles, event handlers, and children that you define for a component without using a State class.

The default value is null.

name

property 
public var name:String

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The name of the view state. State names must be unique for a given component. This property must be set.

overrides

property 
public var overrides:Array

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The overrides for this view state, as an Array of objects that implement the IOverride interface. These overrides are applied in order when the state is entered, and removed in reverse order when the state is exited.

The following Flex classes implement the IOverride interface and let you define the view state characteristics:

  • AddChild
  • RemoveChild
  • SetEventHandler
  • SetProperty
  • SetStyle

The overrides property is the default property of the State class. You can omit the <mx:overrides> tag and its child <mx:Array>tag if you use MXML tag syntax to define the overrides.

stateGroups

property 
public var stateGroups:Array

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The state groups that this view state belongs to as an array of String.

Constructor Detail

State

()Constructor
public function State(properties:Object = null)

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Constructor.

Parameters
properties:Object (default = null)
Event Detail

enterState

Event
Event Object Type: mx.events.FlexEvent
property FlexEvent.type = mx.events.FlexEvent.ENTER_STATE

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Dispatched after a view state has been entered.

The FlexEvent.ENTER_STATE constant defines the value of the type property of the event object for a enterState event.

This event will only be dispatched when there are one or more relevant listeners attached to the dispatching object.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

exitState

Event  
Event Object Type: mx.events.FlexEvent
property FlexEvent.type = mx.events.FlexEvent.EXIT_STATE

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Dispatched just before a view state is exited. This event is dispatched before the changes to the default view state have been removed.

The FlexEvent.EXIT_STATE constant defines the value of the type property of the event object for a exitState event.

This event will only be dispatched when there are one or more relevant listeners attached to the dispatching object.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.