Paket | flash.ui |
Klasse | public final class Multitouch |
Vererbung | Multitouch Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
- flash.events.TouchEvent
- flash.events.GestureEvent
- flash.events.GesturePhase
- flash.events.TransformGestureEvent
- flash.events.PressAndTapGestureEvent
Schreiben Sie mit den aufgeführten Klassen Code, der Berührungsereignisse verarbeitet. Stellen Sie mithilfe der Multitouch-Klasse fest, welche Berührungsinteraktionen die aktuelle Umgebung unterstützt, und verwalten Sie die ggf. unterstützten Berührungsinteraktionen.
Sie können ein Multitouch-Objekt nicht direkt aus ActionScript-Code erstellen. Wenn Sie new Multitouch()
aufrufen, wird ein Ausnahmefehler zurückgegeben.
Hinweis: Die Multitouchfunktion wird für SFW-Dateien, die in HTML für Mac OS eingebettet sind, nicht unterstützt.
Weitere Informationen
Christian Cantrell: Multitouch and gesture support on the Flash Platform
Lee Brimelow: Flash Player 10.1 multi-touch FAQ
Piotr Walczyszyn: Multitouch development in Flex
Verwandte API-Elemente
flash.events.GestureEvent
flash.events.TransformGestureEvent
flash.events.GesturePhase
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
Eigenschaft | Definiert von | ||
---|---|---|---|
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
inputMode : String [statisch]
Identifiziert den Multitouch-Modus für die Verarbeitung von Berührungs- und Gestenereignissen. | Multitouch | ||
mapTouchToMouse : Boolean [statisch]
Gibt an, ob die AIR-Laufzeitumgebung Berührungsereignisse mit Mausereignissen abgleicht. | Multitouch | ||
maxTouchPoints : int [statisch] [schreibgeschützt]
Die maximale Anzahl von gleichzeitigen Kontaktpunkten, die von der aktuellen Umgebung unterstützt wird. | Multitouch | ||
supportedGestures : Vector.<String> [statisch] [schreibgeschützt]
Ein Vektorarray (ein typisiertes Array von Stringwerten) von Multitouch-Berührungstypen, die in der aktuellen Umgebung unterstützt werden. | Multitouch | ||
supportsGestureEvents : Boolean [statisch] [schreibgeschützt]
Gibt an, ob die aktuelle Umgebung die Eingabe mithilfe von Gesten unterstützt, zum Beispiel das Drehen von zwei Fingern auf einem Touchscreen. | Multitouch | ||
supportsTouchEvents : Boolean [statisch] [schreibgeschützt]
Gibt an, ob die aktuelle Umgebung die grundlegende Berührungseingabe unterstützt, zum Beispiel das Tippen mit einem Finger. | Multitouch |
inputMode | Eigenschaft |
inputMode:String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Identifiziert den Multitouch-Modus für die Verarbeitung von Berührungs- und Gestenereignissen. Verwenden Sie diese Eigenschaft, um zu verwalten, ob Ereignisse als Berührungsereignisse mit mehreren Kontaktpunkten und spezifische Ereignisse für unterschiedliche Gesten (zum Beispiel Drehen und Schwenken) oder als einzelner Kontaktpunkt (zum Beispiel Tippen) oder gar nicht (Kontakt wird als Mausereignis behandelt) abgesetzt werden. Um diese Eigenschaft einzustellen, verwenden Sie die Werte aus der flash.ui.MultitouchInputMode-Klasse.
Der Standardwert ist gesture.
Implementierung
public static function get inputMode():String
public static function set inputMode(value:String):void
Verwandte API-Elemente
Beispiel ( Verwendung dieses Beispiels )
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); }
mapTouchToMouse | Eigenschaft |
mapTouchToMouse:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 3 |
Gibt an, ob die AIR-Laufzeitumgebung Berührungsereignisse mit Mausereignissen abgleicht.
Bei der Einstellung true
setzt die AIR-Laufzeitumgebung bei Berührungseingaben zusätzlich zum Berührungsereignis ein Mausereignis ab. Bei der Einstellung false
setzt die Laufzeitumgebung kein zusätzliches Mausereignis ab. Wenn diese Eigenschaft auf false
eingestellt wird, funktionieren vorhandene Codes, Bibliotheken und Frameworks, die sich auf Mausereignisse verlassen, bei Geräten, die die Berührungseingabe nicht unterstützen, möglicherweise nicht korrekt.
Implementierung
public static function get mapTouchToMouse():Boolean
public static function set mapTouchToMouse(value:Boolean):void
Verwandte API-Elemente
maxTouchPoints | Eigenschaft |
maxTouchPoints:int
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Die maximale Anzahl von gleichzeitigen Kontaktpunkten, die von der aktuellen Umgebung unterstützt wird.
Hinweis: Unter Android lautet der Rückgabewert für Geräte, die mehr als zwei Berührungspunkte unterstützen, 2.
Implementierung
public static function get maxTouchPoints():int
Verwandte API-Elemente
supportedGestures | Eigenschaft |
supportedGestures:Vector.<String>
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Ein Vektorarray (ein typisiertes Array von Stringwerten) von Multitouch-Berührungstypen, die in der aktuellen Umgebung unterstützt werden. Die Strings des Arrays können als Ereignistypen verwendet werden, um Ereignis-Listener zu registrieren. Mögliche Werte sind Konstanten aus der GestureEvent-, PressAndTapGestureEvent- und TransformGestureEvent-Klasse (zum Beispiel GESTURE_PAN
).
Wenn die Flash-Laufzeitumgebung in einer Umgebung verwendet wird, die keinerlei Multitouch-Gesten unterstützt, ist der Wert null
.
Hinweis: Bei Mac OS 10.5.3 und höher gibt Multitouch.supportedGestures
Nicht-Null-Werte zurück (und zeigt eventuell fälschlicherweise an, dass Gestenereignisse unterstützt werden), selbst wenn die aktuelle Hardware keine Gesteneingabe unterstützt.
Testen Sie mit dieser Eigenschaft, ob Multitouchgesten unterstützt werden. Verwenden Sie dann Ereignisprozeduren für die verfügbaren Multitouch-Gesten. Für Gesten, die in der aktuellen Umgebung nicht unterstützt werden, müssen Sie eine alternative Ereignisverarbeitung erstellen.
Implementierung
public static function get supportedGestures():Vector.<String>
Verwandte API-Elemente
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
flash.events.GestureEvent
flash.events.PressAndTapGestureEvent
flash.events.TransformGestureEvent
Beispiel ( Verwendung dieses Beispiels )
Multitouch.supportedGestures
-Vektorarrays wird geändert, um alle Gesten einzuschließen, die für die aktuelle Software- und Hardwareumgebung in der Flash-Laufzeit verfügbar sind. Wenn das Multitouch.supportedGestures
-Vektorarray keine der TransformGestureEvent-Gesten enthält, werden keine Ereignis-Listener für diese Geste hinzugefügt. Dieses Beispiel stammt von Holly Schinsky.
Multitouch.inputMode = MultitouchInputMode.GESTURE; for each (var item:String in Multitouch.supportedGestures) { trace("gesture " + item); if (item == TransformGestureEvent.GESTURE_PAN) img.addEventListener(TransformGestureEvent.GESTURE_PAN, onPan); else if (item == TransformGestureEvent.GESTURE_ROTATE) img.addEventListener(TransformGestureEvent.GESTURE_ROTATE, onRotate); else if (item == TransformGestureEvent.GESTURE_SWIPE) img.addEventListener(TransformGestureEvent.GESTURE_SWIPE, onSwipe); else if (item == TransformGestureEvent.GESTURE_ZOOM) img.addEventListener(TransformGestureEvent.GESTURE_ZOOM, onZoom); }
supportsGestureEvents | Eigenschaft |
supportsGestureEvents:Boolean
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Gibt an, ob die aktuelle Umgebung die Eingabe mithilfe von Gesten unterstützt, zum Beispiel das Drehen von zwei Fingern auf einem Touchscreen. Gestenereignisse sind in den TransformGestureEvent-, PressAndTapGestureEvent- und GestureEvent-Klassen definiert.
Hinweis: Bei Mac OS 10.5.3 und höher ist dieser Wert immer true
. Multitouch.supportsGestureEvent
gibt den Wert true
zurück, selbst wenn die Hardware keine Gestenereignisse unterstützt.
Implementierung
public static function get supportsGestureEvents():Boolean
Verwandte API-Elemente
supportsTouchEvents | Eigenschaft |
supportsTouchEvents:Boolean
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Gibt an, ob die aktuelle Umgebung die grundlegende Berührungseingabe unterstützt, zum Beispiel das Tippen mit einem Finger. Berührungsereignisse sind in der TouchEvent-Klasse aufgeführt.
Implementierung
public static function get supportsTouchEvents():Boolean
Verwandte API-Elemente
Multitouch.supportedGestures
den Wert null
zurück, und durch das Zuweisen von null
zum Vektor von Strings wird ein Laufzeitfehler ausgelöst). Wenn Gestenereignisse unterstützt werden, zeigt das Beispiel die Ereignisse aus der TransformGestureEvent-Klasse an, die in der aktuellen Umgebung unterstützt werden.
package { import flash.ui.Multitouch; import flash.ui.MultitouchInputMode; import flash.display.Sprite; import flash.text.TextField; public class MultitouchExample extends Sprite { Multitouch.inputMode = MultitouchInputMode.GESTURE; public function MultitouchExample() { if(Multitouch.supportsGestureEvents){ var supportedGesturesVar:Vector.<String> = Multitouch.supportedGestures; var deviceSupports:TextField = new TextField(); deviceSupports.width = 200; deviceSupports.height = 200; deviceSupports.wordWrap = true; for (var i:int=0; i<supportedGesturesVar.length; ++i) { deviceSupports.appendText(supportedGesturesVar[i] + ", "); addChild(deviceSupports); } } } } }
Tue Jun 12 2018, 10:04 AM Z