flash.events

# TouchEvent - AS3

Package | flash.events
Class | public class TouchEvent
Inheritance | TouchEvent Event Object

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

The TouchEvent class lets you handle events on devices that detect user contact with the device (such as a finger on a touch screen).

When a user interacts with a device such as a mobile phone or tablet with a touch screen, the user typically touches the screen with his or her fingers or a pointing device. You can develop applications that respond to basic touch events (such as a single finger tap) with the TouchEvent class. Create event listeners using the event types defined in this class. For user interaction with multiple points of contact (such as several fingers moving across a touch screen at the same time) use the related GestureEvent, PressAndTapGestureEvent, and TransformGestureEvent classes. And, use the properties and methods of these classes to construct event handlers that respond to the user touching the device.

Use the Multitouch class to determine the current environment's support for touch interaction, and to manage the support of touch interaction if the current environment supports it.

Note: When objects are nested on the display list, touch events target the deepest possible nested object that is visible in the display list. This object is called the target node. To have a target node's ancestor (an object containing the target node in the display list) receive notification of a touch event, use `EventDispatcher.addEventListener()` on the ancestor node with the type parameter set to the specific touch event you want to detect.

In AIR 3, and above, you can listen for proximity events on supported Android devices that have an active stylus. On such devices, `proximityMove` and `touchMove` event objects provide a byte array containing path and pressure samples taken since the previous move event. You can use these samples to construct the path of the stylus between touch events. (Note that hit-testing for interaction of the stylus input with the display list only occurs at the end of a path segment.)

View the examples

More examples

Touch, multitouch and gesture input

Related API Elements

flash.ui.Multitouch
flash.events.GestureEvent
flash.events.TransformGestureEvent
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | altKey : Boolean Indicates whether the Alt key is active (true) or inactive (false). | TouchEvent
|  | bubbles : Boolean [read-only] Indicates whether an event is a bubbling event. | Event
|  | cancelable : Boolean [read-only] Indicates whether the behavior associated with the event can be prevented. | Event
|  | commandKey : Boolean Indicates whether the command key is activated (Mac only). | TouchEvent
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | controlKey : Boolean Indicates whether the Control key is activated on Mac and whether the Ctrl key is activated on Windows or Linux. | TouchEvent
|  | ctrlKey : Boolean On Windows or Linux, indicates whether the Ctrl key is active (true) or inactive (false). | TouchEvent
|  | currentTarget : Object [read-only] The object that is actively processing the Event object with an event listener. | Event
|  | eventPhase : uint [read-only] The current phase in the event flow. | Event
|  | isPrimaryTouchPoint : Boolean Indicates whether the first point of contact is mapped to mouse events. | TouchEvent
|  | isRelatedObjectInaccessible : Boolean If true, the relatedObject property is set to null for reasons related to security sandboxes. | TouchEvent
|  | isTouchPointCanceled : Boolean Reports that this touch input sequence was canceled by the operating system. | TouchEvent
|  | localX : Number The horizontal coordinate at which the event occurred relative to the containing sprite. | TouchEvent
|  | localY : Number The vertical coordinate at which the event occurred relative to the containing sprite. | TouchEvent
|  | pressure : Number A value between 0.0 and 1.0 indicating force of the contact with the device. | TouchEvent
|  | relatedObject : InteractiveObject A reference to a display list object that is related to the event. | TouchEvent
|  | shiftKey : Boolean Indicates whether the Shift key is active (true) or inactive (false). | TouchEvent
|  | sizeX : Number Width of the contact area. | TouchEvent
|  | sizeY : Number Height of the contact area. | TouchEvent
|  | stageX : Number [read-only] The horizontal coordinate at which the event occurred in global Stage coordinates. | TouchEvent
|  | stageY : Number [read-only] The vertical coordinate at which the event occurred in global Stage coordinates. | TouchEvent
|  | target : Object [read-only] The event target. | Event
|  | timestamp : Number Reports the time of the event in relative milliseconds. | TouchEvent
|  | touchIntent : String Reports whether the touch was generated by the primary or the eraser end of a stylus. | TouchEvent
|  | touchPointID : int A unique identification number (as an int) assigned to the touch point. | TouchEvent
|  | type : String [read-only] The type of event. | Event

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | TouchEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, touchPointID:int = 0, isPrimaryTouchPoint:Boolean = false, localX:Number = NaN, localY:Number = NaN, sizeX:Number = NaN, sizeY:Number = NaN, pressure:Number = NaN, relatedObject:InteractiveObject = null, ctrlKey:Boolean = false, altKey:Boolean = false, shiftKey:Boolean = false, commandKey:Boolean = false, controlKey:Boolean = false, timestamp:Number = NaN, touchIntent:String, samples:ByteArray = null, isTouchPointCanceled:Boolean = false)
Creates an Event object that contains information about touch events.
TouchEvent
|  | clone():Event [override] Creates a copy of the TouchEvent object and sets the value of each property to match that of the original. | TouchEvent
|  | formatToString(className:String, ... arguments):String A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes. | Event
|  | getSamples(buffer:ByteArray, append:Boolean = false):uint Updates the specified ByteArray object with the high-frequency data points for a multi-point touch event. | TouchEvent
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isDefaultPrevented():Boolean Checks whether the preventDefault() method has been called on the event. | Event
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | isToolButtonDown(index:int):Boolean Reports that the hardware button at the specified index is pressed. | TouchEvent
|  | preventDefault():void Cancels an event's default behavior if that behavior can be canceled. | Event
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | stopImmediatePropagation():void Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow. | Event
|  | stopPropagation():void Prevents processing of any event listeners in nodes subsequent to the current node in the event flow. | Event
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String [override] Returns a string that contains all the properties of the TouchEvent object. | TouchEvent
|  | updateAfterEvent():void Instructs Flash Player or Adobe AIR to render after processing of this event completes, if the display list has been modified. | TouchEvent
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | PROXIMITY_BEGIN : String = "proximityBegin" [static] Defines the value of the type property of a PROXIMITY_BEGIN touch event object. | TouchEvent
|  | PROXIMITY_END : String = "proximityEnd" [static] Defines the value of the type property of a PROXIMITY_END touch event object. | TouchEvent
|  | PROXIMITY_MOVE : String = "proximityMove" [static] Defines the value of the type property of a PROXIMITY_MOVE touch event object. | TouchEvent
|  | PROXIMITY_OUT : String = "proximityOut" [static] Defines the value of the type property of a PROXIMITY_OUT touch event object. | TouchEvent
|  | PROXIMITY_OVER : String = "proximityOver" [static] Defines the value of the type property of a PROXIMITY_OVER touch event object. | TouchEvent
|  | PROXIMITY_ROLL_OUT : String = "proximityRollOut" [static] Defines the value of the type property of a PROXIMITY_ROLL_OUT touch event object. | TouchEvent
|  | PROXIMITY_ROLL_OVER : String = "proximityRollOver" [static] Defines the value of the type property of a PROXIMITY_ROLL_OVER touch event object. | TouchEvent
|  | TOUCH_BEGIN : String = "touchBegin" [static] Defines the value of the type property of a TOUCH_BEGIN touch event object. | TouchEvent
|  | TOUCH_END : String = "touchEnd" [static] Defines the value of the type property of a TOUCH_END touch event object. | TouchEvent
|  | TOUCH_MOVE : String = "touchMove" [static] Defines the value of the type property of a TOUCH_MOVE touch event object. | TouchEvent
|  | TOUCH_OUT : String = "touchOut" [static] Defines the value of the type property of a TOUCH_OUT touch event object. | TouchEvent
|  | TOUCH_OVER : String = "touchOver" [static] Defines the value of the type property of a TOUCH_OVER touch event object. | TouchEvent
|  | TOUCH_ROLL_OUT : String = "touchRollOut" [static] Defines the value of the type property of a TOUCH_ROLL_OUT touch event object. | TouchEvent
|  | TOUCH_ROLL_OVER : String = "touchRollOver" [static] Defines the value of the type property of a TOUCH_ROLL_OVER touch event object. | TouchEvent
|  | TOUCH_TAP : String = "touchTap" [static] Defines the value of the type property of a TOUCH_TAP touch event object. | TouchEvent

Property Detail

### altKey

property

`altKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2

Indicates whether the Alt key is active (`true`) or inactive (`false`). Supported for Windows and Linux operating systems only.

Implementation
`public function get altKey():Boolean`
`public function set altKey(value:Boolean):void`

### commandKey

property

`commandKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2

Indicates whether the command key is activated (Mac only).

On a Mac OS, the value of the `commandKey` property is the same value as the `ctrlKey` property. This property is always false on Windows or Linux.

Implementation
`public function get commandKey():Boolean`
`public function set commandKey(value:Boolean):void`

### controlKey

property

`controlKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2

Indicates whether the Control key is activated on Mac and whether the Ctrl key is activated on Windows or Linux.

Implementation
`public function get controlKey():Boolean`
`public function set controlKey(value:Boolean):void`

### ctrlKey

property

`ctrlKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2

On Windows or Linux, indicates whether the Ctrl key is active (`true`) or inactive (`false`). On Macintosh, indicates whether either the Control key or the Command key is activated.

Implementation
`public function get ctrlKey():Boolean`
`public function set ctrlKey(value:Boolean):void`

### isPrimaryTouchPoint

property

`isPrimaryTouchPoint:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Indicates whether the first point of contact is mapped to mouse events.

Implementation
`public function get isPrimaryTouchPoint():Boolean`
`public function set isPrimaryTouchPoint(value:Boolean):void`

Related API Elements

flash.events.MouseEvent

### isRelatedObjectInaccessible

property

`isRelatedObjectInaccessible:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

If `true`, the `relatedObject` property is set to `null` for reasons related to security sandboxes. If the nominal value of `relatedObject` is a reference to a DisplayObject in another sandbox, `relatedObject` is set to `null` unless there is permission in both directions across this sandbox boundary. Permission is established by calling `Security.allowDomain()` from a SWF file, or by providing a policy file from the server of an image file, and setting the `LoaderContext.checkPolicyFile` property when loading the image.

Implementation
`public function get isRelatedObjectInaccessible():Boolean`
`public function set isRelatedObjectInaccessible(value:Boolean):void`

Related API Elements

MouseEvent.relatedObject
Security.allowDomain()
LoaderContext.checkPolicyFile

### isTouchPointCanceled

property

`isTouchPointCanceled:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Reports that this touch input sequence was canceled by the operating system.

Touch events can be canceled for a variety of reasons, such as when a palm-generated touch is rejected because a pen stylus is in use. `isTouchPointCanceled` can only be `true` in a `touchEnd` event.

Implementation
`public function get isTouchPointCanceled():Boolean`
`public function set isTouchPointCanceled(value:Boolean):void`

### localX

property

`localX:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

The horizontal coordinate at which the event occurred relative to the containing sprite.

Implementation
`public function get localX():Number`
`public function set localX(value:Number):void`

### localY

property

`localY:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

The vertical coordinate at which the event occurred relative to the containing sprite.

Implementation
`public function get localY():Number`
`public function set localY(value:Number):void`

### pressure

property

`pressure:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.

Implementation
`public function get pressure():Number`
`public function set pressure(value:Number):void`

### relatedObject

property

`relatedObject:InteractiveObject`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

A reference to a display list object that is related to the event. For example, when a `touchOut` event occurs, `relatedObject` represents the display list object to which the pointing device now points. This property applies to the `touchOut`, `touchOver`, `touchRollOut`, and `touchRollOver` events.

The value of this property can be `null` in two circumstances: if there is no related object, or there is a related object, but it is in a security sandbox to which you don't have access. Use the `isRelatedObjectInaccessible()` property to determine which of these reasons applies.

Implementation
`public function get relatedObject():InteractiveObject`
`public function set relatedObject(value:InteractiveObject):void`

Related API Elements

TouchEvent.isRelatedObjectInaccessible

### shiftKey

property

`shiftKey:Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2

Indicates whether the Shift key is active (`true`) or inactive (`false`).

Implementation
`public function get shiftKey():Boolean`
`public function set shiftKey(value:Boolean):void`

### sizeX

property

`sizeX:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Width of the contact area.

Implementation
`public function get sizeX():Number`
`public function set sizeX(value:Number):void`

### sizeY

property

`sizeY:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Height of the contact area.

Implementation
`public function get sizeY():Number`
`public function set sizeY(value:Number):void`

### stageX

property

`stageX:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

The horizontal coordinate at which the event occurred in global Stage coordinates. This property is calculated when the `localX` property is set.

Implementation
`public function get stageX():Number`

### stageY

property

`stageY:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

The vertical coordinate at which the event occurred in global Stage coordinates. This property is calculated when the `localY` property is set.

Implementation
`public function get stageY():Number`

### timestamp

property

`timestamp:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Reports the time of the event in relative milliseconds.

The times reported are relative to the time the application started execution. For events that return a sequence of points in the samples buffer, this timestamp reflects the elapsed time of the last sample in the buffer.

Implementation
`public function get timestamp():Number`
`public function set timestamp(value:Number):void`

Related API Elements

getSamples()

### touchIntent

property

`touchIntent:String`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Reports whether the touch was generated by the primary or the eraser end of a stylus.

If a touch event is generated by a finger or other non-stylus input method, or a stylus for which high-frequency motion tracking is not supported, this property reports the value: TouchEventIntent.UNKNOWN.

The TouchEventIntent class defines constants for the possible values of this property, which include:

- TouchEventIntent.ERASER
- TouchEventIntent.PEN
- TouchEventIntent.UNKNOWN

Implementation
`public function get touchIntent():String`
`public function set touchIntent(value:String):void`

Related API Elements

TouchEventIntent

### touchPointID

property

`touchPointID:int`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

A unique identification number (as an int) assigned to the touch point.

Implementation
`public function get touchPointID():int`
`public function set touchPointID(value:int):void`
Example ( How to use this example )
The following example establishes a variable `touchMoveID` to test for the correct `touchPointID` value before responding to a touch move event. Otherwise, other touch input triggers the event handler, too. Notice the listeners for the move and end phases are on the stage, not the display object. The stage listens for the move or end phases in case the user's touch moves beyond the display object boundaries.
Copy

    Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

    var mySprite:Sprite = new Sprite();
    mySprite.graphics.beginFill(0x336699);
    mySprite.graphics.drawRect(0,0,40,40);
    addChild(mySprite);

    var myTextField:TextField = new TextField();
    addChild(myTextField);
    myTextField.width = 200;
    myTextField.height = 20;

    var touchMoveID:int = 0;

    mySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
    function onTouchBegin(event:TouchEvent) {
        if(touchMoveID != 0) {
            myTextField.text = "already moving. ignoring new touch";
            return;
        }
        touchMoveID = event.touchPointID;

        myTextField.text = "touch begin" + event.touchPointID;
        stage.addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
        stage.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);
    }
    function onTouchMove(event:TouchEvent) {
        if(event.touchPointID != touchMoveID) {
            myTextField.text = "ignoring unrelated touch";
            return;
        }
        mySprite.x = event.stageX;
        mySprite.y = event.stageY;
        myTextField.text = "touch move" + event.touchPointID;
    }
    function onTouchEnd(event:TouchEvent) {
        if(event.touchPointID != touchMoveID) {
            myTextField.text = "ignoring unrelated touch end";
            return;
        }
        touchMoveID = 0;
        stage.removeEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
        stage.removeEventListener(TouchEvent.TOUCH_END, onTouchEnd);
        myTextField.text = "touch end" + event.touchPointID;
    }

Constructor Detail

### TouchEvent

()
Constructor

`public function TouchEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, touchPointID:int = 0, isPrimaryTouchPoint:Boolean = false, localX:Number = NaN, localY:Number = NaN, sizeX:Number = NaN, sizeY:Number = NaN, pressure:Number = NaN, relatedObject:InteractiveObject = null, ctrlKey:Boolean = false, altKey:Boolean = false, shiftKey:Boolean = false, commandKey:Boolean = false, controlKey:Boolean = false, timestamp:Number = NaN, touchIntent:String, samples:ByteArray = null, isTouchPointCanceled:Boolean = false)`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Creates an Event object that contains information about touch events. Event objects are passed as parameters to event listeners.

Parameters

| `type:String` — The type of the event. Possible values are: `TouchEvent.PROXIMITY_BEGIN`, `TouchEvent.PROXIMITY_END`, `TouchEvent.PROXIMITY_MOVE`, `TouchEvent.PROXIMITY_OUT`, `TouchEvent.PROXIMITY_OVER`, `TouchEvent.PROXIMITY_ROLL_OUT`, `TouchEvent.PROXIMITY_ROLL_OVER`, `TouchEvent.TOUCH_BEGIN`, `TouchEvent.TOUCH_END`, `TouchEvent.TOUCH_MOVE`, `TouchEvent.TOUCH_OUT`, `TouchEvent.TOUCH_OVER`, `TouchEvent.TOUCH_ROLL_OUT`, `TouchEvent.TOUCH_ROLL_OVER`, and `TouchEvent.TOUCH_TAP`.
| `bubbles:Boolean` (default = `true`)`` — Determines whether the Event object participates in the bubbling phase of the event flow.
| `cancelable:Boolean` (default = `false`)`` — Determines whether the Event object can be canceled.
| `touchPointID:int` (default = `0`)`` — A unique identification number (as an int) assigned to the touch point.
| `isPrimaryTouchPoint:Boolean` (default = `false`)`` — Indicates whether the first point of contact is mapped to mouse events.
| `localX:Number` (default = `NaN`)`` — The horizontal coordinate at which the event occurred relative to the containing sprite.
| `localY:Number` (default = `NaN`)`` — The vertical coordinate at which the event occurred relative to the containing sprite.
| `sizeX:Number` (default = `NaN`)`` — Width of the contact area.
| `sizeY:Number` (default = `NaN`)`` — Height of the contact area.
| `pressure:Number` (default = `NaN`)`` — A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
| `relatedObject:InteractiveObject` (default = `null`)`` — The complementary InteractiveObject instance that is affected by the event. For example, when a `touchOut` event occurs, `relatedObject` represents the display list object to which the pointing device now points.
| `ctrlKey:Boolean` (default = `false`)`` — On Windows or Linux, indicates whether the Ctrl key is activated. On Mac, indicates whether either the Ctrl key or the Command key is activated.
| `altKey:Boolean` (default = `false`)`` — Indicates whether the Alt key is activated (Windows or Linux only).
| `shiftKey:Boolean` (default = `false`)`` — Indicates whether the Shift key is activated.
| `commandKey:Boolean` (default = `false`)`` — (AIR only) Indicates whether the Command key is activated (Mac only). This parameter is for Adobe AIR only; do not set it for Flash Player content.
| `controlKey:Boolean` (default = `false`)`` — (AIR only) Indicates whether the Control or Ctrl key is activated. This parameter is for Adobe AIR only; do not set it for Flash Player content.
| `timestamp:Number` (default = `NaN`)`` — (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
| `touchIntent:String` (default = `NaN`)`` — (AIR only) A value from the TouchEventIntent class.
| `samples:ByteArray` (default = `null`)`` — (AIR only) A ByteArray object containing position and pressure readings for each intermediate sample recorded since the last touch or proximity event in a sequence.
| `isTouchPointCanceled:Boolean` (default = `false`)`` — (AIR only) `true` if the touch event is canceled because of a rejected touch type.

Method Detail

### clone

()
method

`override public function clone():Event`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Creates a copy of the TouchEvent object and sets the value of each property to match that of the original.

Returns

| `Event` — A new TouchEvent object with property values that match those of the original.

### getSamples

()
method

`public function getSamples(buffer:ByteArray, append:Boolean = false):uint`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Updates the specified ByteArray object with the high-frequency data points for a multi-point touch event.

The ByteArray object referenced by the `buffer` parameter is updated with values for the intermediate data points between this and the previous touch event. Three floating point values are added for each sample: an x coordinate, a y coordinate, and a pressure value. The position values reported in stage coordinates. The pressure is reported as a value between 0 and 1. Samples are recorded at regular time intervals. The exact frequency depends on the device hardware and hardware drivers. Typical sample frequencies are around 133 Hz. Note that touch events are not dispatched at exact intervals. Thus, the buffer for similar events can contain a different number of samples. The last sample in the buffer has the same data as the `stageX`, `stageY`, and `pressure` properties of this touch event object.

A sample buffer is included in the event objects dispatched for `proximityMove` and `touchMove` events.

Parameters

| `buffer:ByteArray` — the ByteArray object to receive the sample data.
| `append:Boolean` (default = `false`)`` — when `true`, the samples are added to the `buffer` byte array starting at the array's current `position` property. When `false`, the default, existing data in the buffer object is discarded before the samples are added.

Returns

| `uint` — uint the number of samples added to the buffer. Each sample consists of three floating point Numbers.

Related API Elements

ByteArray.readFloat()
ByteArray.position
ByteArray.bytesAvailable
Example ( How to use this example )
The following example illustrates how to retrieve the sample data from a touchMove or proximityMove event:
Copy

    function touchMoveHandler( event:TouchEvent ):void
    {
        if( (event.type == TouchEvent.TOUCH_MOVE ||
            event.type == TouchEvent.PROXIMITY_MOVE) &&
            event.touchEventIntent != TouchEventIntent.UNKNOWN )
        {
            var samples:ByteArray = new ByteArray();
            event.getSamples( samples, true );
            samples.position = 0;     // rewind to beginning of array before reading

            var xCoord:Number, yCoord:Number, pressure:Number;

            while( samples.bytesAvailable > 0 )
            {
                xCoord = samples.readFloat();
                yCoord = samples.readFloat();
                pressure = samples.readFloat();
                //do something with the sample data
            }
        }
    }

The following example illustrates how to retrieve the sample data from a touchMove or proximityMove event. In this example, the samples are appended to an existing byte array:
Copy

    var samples:ByteArray = new ByteArray();

    function touchMoveHandler( event:TouchEvent ):void
    {
        if( (event.type == TouchEvent.TOUCH_MOVE ||
            event.type == TouchEvent.PROXIMITY_MOVE) &&
            event.touchEventIntent != TouchEventIntent.UNKNOWN )
        {
            var sampleCount:uint = event.getSamples( samples, true );
            var xCoord:Number, yCoord:Number, pressure:Number;

            for( var i:int; i < sampleCount; i++ )
            {
                xCoord = samples.readFloat();
                yCoord = samples.readFloat();
                pressure = samples.readFloat();
                //do something with the sample data
            }
        }
    }

### isToolButtonDown

()
method

`public function isToolButtonDown(index:int):Boolean`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Reports that the hardware button at the specified index is pressed.

Parameters

| `index:int` — the zero-based index of the buttons supported by a stylus-type input device.

Returns

| `Boolean`

### toString

()
method

`override public function toString():String`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Returns a string that contains all the properties of the TouchEvent object. The string is in the following format:

`[TouchEvent type=value bubbles=value cancelable=value ... ]`

Returns

| `String` — A string that contains all the properties of the TouchEvent object.

### updateAfterEvent

()
method

`public function updateAfterEvent():void`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Instructs Flash Player or Adobe AIR to render after processing of this event completes, if the display list has been modified.

Constant Detail

### PROXIMITY_BEGIN

Constant

`public static const PROXIMITY_BEGIN:String = "proximityBegin"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_BEGIN` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityBegin

### PROXIMITY_END

Constant

`public static const PROXIMITY_END:String = "proximityEnd"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_END` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityEnd

### PROXIMITY_MOVE

Constant

`public static const PROXIMITY_MOVE:String = "proximityMove"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_MOVE` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityMove

### PROXIMITY_OUT

Constant

`public static const PROXIMITY_OUT:String = "proximityOut"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_OUT` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityOUT

### PROXIMITY_OVER

Constant

`public static const PROXIMITY_OVER:String = "proximityOver"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_OVER` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityOver

### PROXIMITY_ROLL_OUT

Constant

`public static const PROXIMITY_ROLL_OUT:String = "proximityRollOut"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_ROLL_OUT` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityRollOut

### PROXIMITY_ROLL_OVER

Constant

`public static const PROXIMITY_ROLL_OVER:String = "proximityRollOver"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 3

Defines the value of the `type` property of a `PROXIMITY_ROLL_OVER` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.
`timestamp` | (AIR only) The timestamp of the event in milliseconds relative to the start of the application.
`touchIntent` | (AIR only) A value from the TouchEventIntent class.
`isTouchPointCanceled` | (AIR only) `true` if the touch event is canceled because of the device's touch-rejection logic.

Related API Elements

flash.display.InteractiveObject.proximityRollOver

### TOUCH_BEGIN

Constant

`public static const TOUCH_BEGIN:String = "touchBegin"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_BEGIN` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchBegin

### TOUCH_END

Constant

`public static const TOUCH_END:String = "touchEnd"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_END` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchEnd

### TOUCH_MOVE

Constant

`public static const TOUCH_MOVE:String = "touchMove"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_MOVE` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchMove

### TOUCH_OUT

Constant

`public static const TOUCH_OUT:String = "touchOut"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_OUT` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchOut

### TOUCH_OVER

Constant

`public static const TOUCH_OVER:String = "touchOver"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_OVER` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchOver

### TOUCH_ROLL_OUT

Constant

`public static const TOUCH_ROLL_OUT:String = "touchRollOut"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_ROLL_OUT` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchRollOut

### TOUCH_ROLL_OVER

Constant

`public static const TOUCH_ROLL_OVER:String = "touchRollOver"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_ROLL_OVER` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchRollOver

### TOUCH_TAP

Constant

`public static const TOUCH_TAP:String = "touchTap"`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4

Defines the value of the `type` property of a `TOUCH_TAP` touch event object.

The dispatched TouchEvent object has the following properties:

Property | Value
--- | ---
`altKey` | `true` if the Alt key is active (Windows or Linux).
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`commandKey` | `true` on the Mac if the Command key is active; `false` if it is inactive. Always `false` on Windows.
`controlKey` | `true` if the Ctrl or Control key is active; `false` if it is inactive.
`ctrlKey` | `true` on Windows or Linux if the Ctrl key is active. `true` on Mac if either the Ctrl key or the Command key is active. Otherwise, `false`.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`eventPhase` | The current phase in the event flow.
`isRelatedObjectInaccessible` | `true` if the relatedObject property is set to `null` because of security sandbox rules.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`pressure` | A value between `0.0` and `1.0` indicating force of the contact with the device. If the device does not support detecting the pressure, the value is `1.0`.
`relatedObject` | A reference to a display list object related to the event.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`sizeX` | Width of the contact area.
`sizeY` | Height of the contact area.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the touching device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.
`touchPointID` | A unique identification number (as an int) assigned to the touch point.

Related API Elements

flash.display.InteractiveObject.touchTap
Example ( How to use this example )
The following example displays a message when the square drawn on mySprite is tapped on a touch-enabled screen:
Copy

    Multitouch.inputMode=MultitouchInputMode.TOUCH_POINT;

    var mySprite:Sprite = new Sprite();
    var myTextField:TextField = new TextField();

    mySprite.graphics.beginFill(0x336699);
    mySprite.graphics.drawRect(0,0,40,40);
    addChild(mySprite);

    mySprite.addEventListener(TouchEvent.TOUCH_TAP, taphandler);

    function taphandler(e:TouchEvent): void {
        myTextField.text = "I've been tapped";
        myTextField.y = 50;
        addChild(myTextField);
    }

Examples How to use this example
TouchEventExample.as
The following example shows event handling for the `TOUCH_BEGIN`, `TOUCH_MOVE`, and `TOUCH_END` events. While the point of contact moves across the screen (`onTouchMove`), the x-coordinate relative to the stage is traced to output. For the `Sprite.startTouchDrag` parameters in the `onTouchBegin` function, the value for touchPointID is the value assigned to the event object. The bounds parameter is the rectangle defining the boundaries of the parent display object (bg is a display object containing MySprite).
Copy

    Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

    MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
    MySprite.addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
    MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);

    function onTouchBegin(eBegin:TouchEvent) {
         eBegin.target.startTouchDrag(eBegin.touchPointID, false, bg.getRect(this));
         trace("touch begin");

     }

    function onTouchMove(eMove:TouchEvent) {
        trace(eMove.stageX);
    }

    function onTouchEnd(eEnd:TouchEvent) {
         eEnd.target.stopTouchDrag(eEnd.touchPointID);
         trace("touch end");
    }

TouchExample2.as
The following example shows how to handle touch events and touch event phases, as well as the `Multitouch.maxTouchPoints` and the touch event object's `touchPointID` properties. This example comes from Christian Cantrell, and is explained in more detail in his quickstart: Multi-touch and gesture support on the Flash Platform.
Copy

     package
    {
        import flash.display.Sprite;
        import flash.events.TouchEvent;
        import flash.text.AntiAliasType;
        import flash.text.TextField;
        import flash.text.TextFormat;
        import flash.ui.Multitouch;
        import flash.ui.MultitouchInputMode;

        [SWF(width=320, height=460, frameRate=24, backgroundColor=0xEB7F00)]
        public class TouchExample2 extends Sprite
        {
            private var dots:Object;
            private var labels:Object;
            private var labelFormat:TextFormat;
            private var dotCount:uint;
            private var dotsLeft:TextField;
            private static const LABEL_SPACING:uint = 15;

            public function TouchExample2()
            {
                super();

                this.labelFormat = new TextFormat();
                labelFormat.color = 0xACF0F2;
                labelFormat.font = "Helvetica";
                labelFormat.size = 11;

                this.dotCount = 0;

                this.dotsLeft = new TextField();
                this.dotsLeft.width = 300;
                this.dotsLeft.defaultTextFormat = this.labelFormat;
                this.dotsLeft.x = 3;
                this.dotsLeft.y = 0;
                this.stage.addChild(this.dotsLeft);
                this.updateDotsLeft();

                this.dots = new Object();
                this.labels = new Object();

                Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
                this.stage.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
                this.stage.addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);
                this.stage.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);
            }

            private function onTouchBegin(e:TouchEvent):void
            {
                if (this.dotCount == Multitouch.maxTouchPoints) return;
                var dot:Sprite = this.getCircle();
                dot.x = e.stageX;
                dot.y = e.stageY;
                this.stage.addChild(dot);
                dot.startTouchDrag(e.touchPointID, true);
                this.dots[e.touchPointID] = dot;

                ++this.dotCount;

                var label:TextField = this.getLabel(e.stageX + ", " + e.stageY);
                label.x = 3;
                label.y = this.dotCount * LABEL_SPACING;
                this.stage.addChild(label);
                this.labels[e.touchPointID] = label;

                this.updateDotsLeft();
            }

            private function onTouchMove(e:TouchEvent):void
            {
                var label:TextField = this.labels[e.touchPointID];
                label.text = (e.stageX + ", " + e.stageY);
            }

            private function onTouchEnd(e:TouchEvent):void
            {
                var dot:Sprite = this.dots[e.touchPointID];
                var label:TextField = this.labels[e.touchPointID];

                this.stage.removeChild(dot);
                this.stage.removeChild(label);

                delete this.dots[e.touchPointID];
                delete this.labels[e.touchPointID];

                --this.dotCount;

                this.updateDotsLeft();
            }

            private function getCircle(circumference:uint = 40):Sprite
            {
                var circle:Sprite = new Sprite();
                circle.graphics.beginFill(0x1695A3);
                circle.graphics.drawCircle(0, 0, circumference);
                return circle;
            }

            private function getLabel(initialText:String):TextField
            {
                var label:TextField = new TextField();
                label.defaultTextFormat = this.labelFormat;
                label.selectable = false;
                label.antiAliasType = AntiAliasType.ADVANCED;
                label.text = initialText;
                return label;
            }

            private function updateDotsLeft():void
            {
                this.dotsLeft.text = "Touches Remaining: " + (Multitouch.maxTouchPoints - this.dotCount);
            }
        }
    }

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00