套件 | 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
指出是否已啟用 Control 鍵 (在 Mac 中) 以及是否已啟用 Ctrl 鍵 (在 Windows 或 Linux 中)。 | 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 ) — 判斷事件物件是否參與事件流程的反昇階段。
| |
cancelable:Boolean (default = false ) — 判斷是否可以取消 Event 物件。
| |
phase:String (default = null ) — GesturePhase 類別的值,指出觸控手勢的進度 (begin、update、end 或 all)。
| |
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 鍵為作用中 (Windows 或 Linux),則為 true 。 |
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 | 事件流程中的目前階段。 對於兩指輕點手勢,一旦傳送該事件,這個值永遠都是對應至值 GesturePhase.ALL 的 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 類別中的其他手勢支援 begin、update 及 end 階段。
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, 03:47 PM Z