包 | flash.events |
类 | public class GestureEvent |
继承 | GestureEvent Event Object |
子类 | PressAndTapGestureEvent, TransformGestureEvent |
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
使用 Multitouch 类确定当前环境的触摸交互支持,如果当前环境支持触摸交互,则对其进行管理。
注意:当对象嵌套在显示列表中时,触摸事件的目标将是显示列表中可见的最深的可能嵌套对象。此对象称为目标节点。要使目标节点的祖代(祖代是一个包含显示列表中所有目标节点的对象,从舞台到目标节点的父节点均包括在内)接收触摸事件的通知,请对祖代节点使用 EventDispatcher.addEventListener()
并将 type 参数设置为要检测的特定触摸事件。
相关 API 元素
flash.ui.Multitouch
flash.events.TouchEvent
flash.events.TransformGestureEvent
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
flash.events.TouchEvent
flash.events.TransformGestureEvent
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
公共属性
属性 | 由以下参数定义 | ||
---|---|---|---|
altKey : Boolean
表示 Alt 键是处于活动状态 (true) 还是非活动状态 (false)。 | GestureEvent | ||
bubbles : Boolean [只读]
表示事件是否为冒泡事件。 | Event | ||
cancelable : Boolean [只读]
表示是否可以阻止与事件相关联的行为。 | Event | ||
commandKey : Boolean
表示是否已激活 Command 键(仅限 Mac)。 | GestureEvent | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
controlKey : Boolean
表示在 Mac 中是否已激活 Control 键,以及在 Windows 或 Linux 中是否已激活 Ctrl 键。 | GestureEvent | ||
ctrlKey : Boolean
在 Windows 或 Linux 中,表示 Ctrl 键是处于活动状态 (true) 还是非活动状态 (false)。 | GestureEvent | ||
currentTarget : Object [只读]
当前正在使用某个事件侦听器处理 Event 对象的对象。 | Event | ||
eventPhase : uint [只读]
事件流中的当前阶段。 | Event | ||
localX : Number
事件发生点相对于所属 Sprite 的水平坐标。 | GestureEvent | ||
localY : Number
事件发生点相对于所属 Sprite 的垂直坐标。 | GestureEvent | ||
phase : String
GesturePhase 类中用于表示触摸操作的进度的值。 | GestureEvent | ||
shiftKey : Boolean
表示 Shift 键是处于活动状态 (true) 还是非活动状态 (false)。 | GestureEvent | ||
stageX : Number [只读]
事件发生点在全局舞台坐标中的水平坐标。 | GestureEvent | ||
stageY : Number [只读]
事件发生点在全局舞台坐标中的垂直坐标。 | GestureEvent | ||
target : Object [只读]
事件目标。 | Event | ||
type : String [只读]
事件的类型。 | Event |
公共方法
方法 | 由以下参数定义 | ||
---|---|---|---|
GestureEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, phase:String = null, localX:Number = 0, localY:Number = 0, ctrlKey:Boolean = false, altKey:Boolean = false, shiftKey:Boolean = false, commandKey:Boolean = false, controlKey:Boolean = false)
创建包含有关多点触控事件(例如同时在触摸屏上按两个手指)信息的 Event 对象。 | GestureEvent | ||
[覆盖]
创建 GestureEvent 对象的副本,并将每个属性的值设置为与原始属性值相匹配。 | GestureEvent | ||
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。 | Event | ||
表示对象是否已经定义了指定的属性。 | Object | ||
检查是否已对事件调用 preventDefault() 方法。 | Event | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果可以取消事件的默认行为,则取消该行为。 | Event | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。 | Event | ||
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。 | Event | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
[覆盖]
返回一个字符串,其中包含 GestureEvent 对象的所有属性。 | GestureEvent | ||
如果显示列表已由事件处理函数修改,则在处理手势事件后刷新 Flash 运行时显示。 | GestureEvent | ||
返回指定对象的原始值。 | Object |
公共常量
常量 | 由以下参数定义 | ||
---|---|---|---|
GESTURE_TWO_FINGER_TAP : String = "gestureTwoFingerTap" [静态]
定义 GESTURE_TWO_FINGER_TAP 手势事件对象的 type 属性的值。 | GestureEvent |
属性详细信息
altKey | 属性 |
commandKey | 属性 |
controlKey | 属性 |
ctrlKey | 属性 |
localX | 属性 |
localY | 属性 |
phase | 属性 |
phase:String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
GesturePhase 类中用于表示触摸操作的进度的值。对于多数手势,此值是 begin
、update
或 end
。对于滑动和二指点击手势,调度此事件后,阶段值始终是 all
。使用此值确定事件处理程序何时响应复杂用户交互,或确定何时根据多点触控手势的当前阶段(例如用户触摸并沿着屏幕拖动可视对象时展开、移动和“放置”)以不同方式响应。
实现
public function get phase():String
public function set phase(value:String):void
相关 API 元素
shiftKey | 属性 |
stageX | 属性 |
stageY | 属性 |
构造函数详细信息
GestureEvent | () | 构造函数 |
public function GestureEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, phase:String = null, localX:Number = 0, localY:Number = 0, ctrlKey:Boolean = false, altKey:Boolean = false, shiftKey:Boolean = false, commandKey:Boolean = false, controlKey:Boolean = false)
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
创建包含有关多点触控事件(例如同时在触摸屏上按两个手指)信息的 Event 对象。将 Event 对象作为参数传递给事件侦听器。
参数type:String — 事件的类型。支持的值是: GestureEvent.GESTURE_TWO_FINGER_TAP 。
| |
bubbles:Boolean (default = true ) — 确定 Event 对象是否参与事件流的冒泡阶段。
| |
cancelable:Boolean (default = false ) — 确定是否可以取消 Event 对象。
| |
phase:String (default = null ) — GesturePhase 类中用于表示触摸手势的进度(开始、更新、结束或所有)的值。
| |
localX:Number (default = 0 ) — 事件发生点相对于所属 Sprite 的水平坐标。
| |
localY:Number (default = 0 ) — 事件发生点相对于所属 Sprite 的垂直坐标。
| |
ctrlKey:Boolean (default = false ) — 在 Windows 或 Linux 中,表示是否已激活 Ctrl 键。在 Mac 中,表示是否已激活 Ctrl 键或 Command 键。
| |
altKey:Boolean (default = false ) — 表示是否已激活 Alt 键(仅限 Windows 或 Linux)。
| |
shiftKey:Boolean (default = false ) — 表示是否已激活 Shift 键。
| |
commandKey:Boolean (default = false ) — (仅 AIR)表示 Command 键是否已激活(仅限 Mac)。此参数仅适用于 Adobe AIR;请勿对 Flash Player 内容设置此参数。
| |
controlKey:Boolean (default = false ) — (仅 AIR)表示 Control 或 Ctrl 键是否已激活。此参数仅适用于 Adobe AIR;请勿对 Flash Player 内容设置此参数。
|
相关 API 元素
方法详细信息
clone | () | 方法 |
toString | () | 方法 |
updateAfterEvent | () | 方法 |
public function updateAfterEvent():void
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
如果显示列表已由事件处理函数修改,则在处理手势事件后刷新 Flash 运行时显示。
常量详细信息
GESTURE_TWO_FINGER_TAP | 常量 |
public static const GESTURE_TWO_FINGER_TAP:String = "gestureTwoFingerTap"
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
定义 GESTURE_TWO_FINGER_TAP
手势事件对象的 type
属性的值。
调度的 GestureEvent 对象具有下列属性:
属性 | 值 |
---|---|
altKey | 如果 Alt 键处于活动状态,则为 true (Windows 或 Linux)。 |
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
commandKey | (仅限 AIR)在 Mac 中,如果 Command 键处于活动状态,则为 true ;如果处于非活动状态,则为 false 。在 Windows 中始终为 false 。 |
controlKey | 如果 Ctrl 或 Control 键处于活动状态,则为 true ,如果处于非活动状态,则为 false 。 |
ctrlKey | 在 Windows 或 Linux 中,如果 Ctrl 键处于活动状态,则为 true 。在 Mac 中,如果 Ctrl 键或 Command 键处于活动状态,则为 true 。否则为 false 。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
phase | 事件流中的当前阶段。对于二指点击事件,调度此事件后,此值始终是 all ,与值 GesturePhase.ALL 对应。 |
isRelatedObjectInaccessible | 如果由于安全沙箱规则的原因将 relatedObject 属性设置为 null ,则为 true 。 |
localX | 事件发生点相对于所属 Sprite 的水平坐标。 |
localY | 事件发生点相对于所属 Sprite 的垂直坐标。 |
shiftKey | 如果 Shift 键处于活动状态,则为 true ;如果处于非活动状态,则为 false 。 |
target | 触摸设备下的 InteractiveObject 实例。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
相关 API 元素
示例 如何使用本示例
GestureTwoFingerTap.as
以下示例显示针对
GESTURE_TWO_FINGER_TAP
事件的事件处理。当用户执行二指点击手势时,mySprite 会进行旋转,同时 myTextField 会使用二指点击事件的唯一阶段 all
进行填充。TransformGestureEvent 类中的其他手势支持开始、更新和结束阶段。
Multitouch.inputMode = MultitouchInputMode.GESTURE; var mySprite = new Sprite(); mySprite.addEventListener(GestureEvent.GESTURE_TWO_FINGER_TAP , onTwoFingerTap ); mySprite.graphics.beginFill(0x336699); mySprite.graphics.drawRect(0, 0, 100, 80); var myTextField = new TextField(); myTextField.y = 200; addChild(mySprite); addChild(myTextField); function onTwoFingerTap(evt:GestureEvent):void { evt.target.rotation -= 45; myTextField.text = evt.phase; //"all" }
Tue Jun 12 2018, 11:04 AM Z