Package | flash.ui |
Classe | public final class Multitouch |
Héritage | Multitouch Object |
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
- flash.events.TouchEvent
- flash.events.GestureEvent
- flash.events.GesturePhase
- flash.events.TransformGestureEvent
- flash.events.PressAndTapGestureEvent
Utilisez les classes répertoriées pour rédiger du code en vue de prendre en charge les événements tactiles. Utilisez la classe Multitouch pour activer et gérer la prise en charge des actions tactiles par l’environnement actuel.
Il est impossible de créer un objet Multitouch directement à partir du code ActionScript. Si vous appelez new Multitouch()
, une exception est renvoyée.
Remarque : la fonction Multitouch n’est pas prise en charge pour les fichiers SWF intégrés dans HTML exécutés sous Mac OS.
Plus d’exemples
Informations complémentaires
Christian Cantrell : Prise en charge de l’interaction tactile multipoint et du mouvement sur la plate-forme Flash
Lee Brimelow : Foire aux questions sur l’interaction tactile multipoint sur Flash Player 10.1
Piotr Walczyszyn : Développement de l’interaction tactile multipoint dans Flex
Eléments de l’API associés
flash.events.GestureEvent
flash.events.TransformGestureEvent
flash.events.GesturePhase
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
Propriété | Défini par | ||
---|---|---|---|
constructor : Object
Référence à l’objet de classe ou à la fonction constructeur d’une occurrence donnée d’un objet. | Object | ||
inputMode : String [statique]
Identifie le mode tactile multipoint pour la gestion des événements tactiles et des événements de mouvement. | Multitouch | ||
mapTouchToMouse : Boolean [statique]
Indique si le moteur d’exécution d’AIR mappe les événements tactiles sur les événements de souris. | Multitouch | ||
maxTouchPoints : int [statique] [lecture seule]
Nombre maximal de point tactiles simultanés pris en charge par l’environnement actuel. | Multitouch | ||
supportedGestures : Vector.<String> [statique] [lecture seule]
Tableau Vector (tableau typé de valeurs de chaînes) des types de contacts tactiles multipoints pris en charge par l’environnement actuel. | Multitouch | ||
supportsGestureEvents : Boolean [statique] [lecture seule]
Indique si l’environnement actuel prend en charge certains mouvements, notamment la rotation de deux doigts sur un écran tactile. | Multitouch | ||
supportsTouchEvents : Boolean [statique] [lecture seule]
Indique si l’environnement actuel prend en charge les actions tactiles de base, notamment l’appui simple sur un écran tactile. | Multitouch |
inputMode | propriété |
inputMode:String
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Identifie le mode tactile multipoint pour la gestion des événements tactiles et des événements de mouvement. Utilisez cette propriété pour vérifier si les événements sont distribués en tant qu’événements tactiles avec plusieurs points de contact et des événements spécifiques pour différents mouvements (telles que la rotation et le panoramique), avec un seul point de contact (par exemple, l’appui simple), ou sans aucun point de contact (le contact est considéré comme un événement de souris). Pour définir cette propriété, utilisez les valeurs de la classe flash.ui.MultitouchInputMode.
La valeur par défaut est gesture.
Implémentation
public static function get inputMode():String
public static function set inputMode(value:String):void
Eléments de l’API associés
Exemple ( Comment utiliser cet exemple )
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 | propriété |
mapTouchToMouse:Boolean
Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | AIR 3 |
Indique si le moteur d’exécution d’AIR mappe les événements tactiles sur les événements de souris.
Lorsque la valeur est définie sur true
(valeur par défaut), le moteur d’exécution d’AIR distribue un événement de souris en plus d’un événement tactile pour les entrées tactiles. Lorsque la valeur est définie sur false
, le moteur d’exécution ne distribue pas d’autre événement de souris. Si vous définissez cette propriété sur false
, il est possible que le code, les bibliothèques et les structures existants qui reposent sur les événements de souris ne fonctionnent pas correctement sur les périphériques qui prennent en charge la saisie tactile.
Implémentation
public static function get mapTouchToMouse():Boolean
public static function set mapTouchToMouse(value:Boolean):void
Eléments de l’API associés
maxTouchPoints | propriété |
maxTouchPoints:int
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Nombre maximal de point tactiles simultanés pris en charge par l’environnement actuel.
Remarque : Sous Android, pour les périphériques prenant en charge plus de deux points tactiles, la valeur renvoyée est 2.
Implémentation
public static function get maxTouchPoints():int
Eléments de l’API associés
supportedGestures | propriété |
supportedGestures:Vector.<String>
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Tableau Vector (tableau typé de valeurs de chaînes) des types de contacts tactiles multipoints pris en charge par l’environnement actuel. Le tableau de chaînes peut être utilisé comme types d’événements en vue d’enregistrer des écouteurs d’événement. Les valeurs possibles sont les constantes des classes GestureEvent, PressAndTapGestureEvent et TransformGestureEvent (telles que GESTURE_PAN
).
Si le moteur d’exécution de Flash se trouve dans un environnement qui ne prend pas en charge les mouvements tactiles multipoints, la valeur est définie sur null
.
Remarque : sous Mac OS 10.5.3 et les versions ultérieures, Multitouch.supportedGestures
renvoie des valeurs non nulles (indiquant peut-être de façon erronée que les événements de mouvement sont pris en charge), même si le matériel actuel ne prend pas en charge ce type d’événements.
Utilisez cette propriété pour vérifier la prise en charge des mouvements tactiles multipoints. Utilisez ensuite des gestionnaires d’événements pour les mouvements tactiles multipoints disponibles. Pour les mouvements non pris en charge dans l’environnement actuel, vous devez créer un système de gestion d’événements alternatif.
Implémentation
public static function get supportedGestures():Vector.<String>
Plus d’exemples
Eléments de l’API associés
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
flash.events.GestureEvent
flash.events.PressAndTapGestureEvent
flash.events.TransformGestureEvent
Exemple ( Comment utiliser cet exemple )
Multitouch.supportedGestures
change pour inclure tous les mouvements disponibles à l’environnement logiciel et matériel actuels pour le moteur d’exécution de Flash. Si le tableau vectoriel Multitouch.supportedGestures
ne contient pas l’un des mouvements TransformGestureEvent, aucun écouteur d’événement n’est ajouté pour ce mouvement. Cet exemple est fourni par 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 | propriété |
supportsGestureEvents:Boolean
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Indique si l’environnement actuel prend en charge certains mouvements, notamment la rotation de deux doigts sur un écran tactile. Les événements de mouvement sont répertoriés dans les classes GestureEvent, PressAndTapGestureEvent et TransformGestureEvent.
Remarque : sous Mac OS 10.5.3 et les versions ultérieures, cette valeur est toujours définie sur true
. Multitouch.supportsGestureEvent
renvoie true
, même si le matériel ne prend pas en charge les événements de mouvement.
Implémentation
public static function get supportsGestureEvents():Boolean
Plus d’exemples
Eléments de l’API associés
supportsTouchEvents | propriété |
supportsTouchEvents:Boolean
[lecture seule] Version du langage: | ActionScript 3.0 |
Versions du moteur d’exécution: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Indique si l’environnement actuel prend en charge les actions tactiles de base, notamment l’appui simple sur un écran tactile. Les événements tactiles sont répertoriés dans la classe TouchEvent.
Implémentation
public static function get supportsTouchEvents():Boolean
Plus d’exemples
Eléments de l’API associés
Multitouch.supportedGestures
renvoie null
; l’affectation de la valeur null
au vecteur de chaînes provoque une erreur d’exécution). Si les événements de mouvement sont pris en charge, l’exemple affiche les événements de la classe TransformGestureEvent pris en charge dans l’environnement actuel :
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, 09:30 AM Z