Pakket | flash.ui |
Klasse | public final class Multitouch |
Overerving | Multitouch Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
- flash.events.TouchEvent
- flash.events.GestureEvent
- flash.events.GesturePhase
- flash.events.TransformGestureEvent
- flash.events.PressAndTapGestureEvent
Gebruik de weergegeven klassen om code te schrijven voor de verwerking van aanraakgebeurtenissen. Gebruik de Multitouch-klasse om te bepalen in hoeverre de huidige omgeving ondersteuning biedt voor aanraakinteractie en om de ondersteuning van aanraakinteractie te beheren als dit wordt ondersteund door de huidige omgeving.
U kunt een Multitouch-object niet direct met ActionScript-code maken. Wanneer u new Multitouch()
aanroept, wordt een uitzondering gegenereerd.
Opmerking: De Multitouch-functie wordt niet ondersteund voor SWF-bestanden die zijn ingesloten in HTML-code die wordt uitgevoerd op Mac OS.
Meer informatie
Christian Cantrell: ondersteuning voor multitouch en beweging op het Flash Platform
Lee Brimelow: veelgestelde vragen (FAQ) over multitouch bij Flash Player 10.1
Piotr Walczyszyn: ontwikkelingen voor multitouch in Flex
Verwante API-elementen
flash.events.GestureEvent
flash.events.TransformGestureEvent
flash.events.GesturePhase
flash.events.PressAndTapGestureEvent
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
Eigenschap | Gedefinieerd door | ||
---|---|---|---|
constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | ||
inputMode : String [statisch]
Geeft de multi-touchmodus aan voor de gebeurtenisafhandeling met aanrakingen en bewegingen. | Multitouch | ||
mapTouchToMouse : Boolean [statisch]
Geeft op of de AIR-runtime aanraakgebeurtenissen toewijst aan muisgebeurtenissen. | Multitouch | ||
maxTouchPoints : int [statisch] [alleen-lezen]
Het maximumaantal gelijktijdige aanraakpunten dat door de huidige omgeving wordt ondersteund. | Multitouch | ||
supportedGestures : Vector.<String> [statisch] [alleen-lezen]
Een Vector-array (een getypte array van tekenreekswaarden) met multi-touchcontacttypen die in de huidige omgeving worden ondersteund. | Multitouch | ||
supportsGestureEvents : Boolean [statisch] [alleen-lezen]
Geeft aan of de huidige omgeving ondersteuning biedt voor aanraakinvoer, zoals het roteren van twee vingers over een touchscreen. | Multitouch | ||
supportsTouchEvents : Boolean [statisch] [alleen-lezen]
Geeft aan of de huidige omgeving ondersteuning biedt voor elementaire aanraakinvoer, zoals één tik met een vinger. | Multitouch |
inputMode | eigenschap |
inputMode:String
Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Geeft de multi-touchmodus aan voor de gebeurtenisafhandeling met aanrakingen en bewegingen. Met deze eigenschap bepaalt u of gebeurtenissen worden verzonden als aanraakgebeurtenissen met meerdere contactpunten en als specifieke gebeurtenissen voor verschillende bewegingen (zoals draaien en pannen), of alleen als een aanraakbeweging met één contactpunt (tikken), of zonder aanraakpunt (het contact wordt verwerkt als een muisgebeurtenis). Gebruik waarden uit de klasse flash.ui.MultitouchInputMode om deze eigenschap in te stellen.
De standaardwaarde is gesture.
Implementatie
public static function get inputMode():String
public static function set inputMode(value:String):void
Verwante API-elementen
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
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 | eigenschap |
mapTouchToMouse:Boolean
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 3 |
Geeft op of de AIR-runtime aanraakgebeurtenissen toewijst aan muisgebeurtenissen.
Bij de standaardinstelling true
verzendt de AIR-runtime bij aanraakinvoer niet alleen een aanraakgebeurtenis, maar ook een muisgebeurtenis. In geval van false
verzendt de runtime niet ook een aanvullende muisgebeurtenis. Wanneer deze eigenschap wordt ingesteld op false
, kunnen bestaande code, bibliotheken en frameworks die afhankelijk zijn van muisgebeurtenissen onjuist gaan functioneren op apparaten die aanraakinvoer ondersteunen.
Implementatie
public static function get mapTouchToMouse():Boolean
public static function set mapTouchToMouse(value:Boolean):void
Verwante API-elementen
maxTouchPoints | eigenschap |
maxTouchPoints:int
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Het maximumaantal gelijktijdige aanraakpunten dat door de huidige omgeving wordt ondersteund.
Opmerking: bij Android is de geretourneerde waarde 2 voor apparaten die ondersteuning bieden voor meer dan twee aanraakpunten.
Implementatie
public static function get maxTouchPoints():int
Verwante API-elementen
supportedGestures | eigenschap |
supportedGestures:Vector.<String>
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Een Vector-array (een getypte array van tekenreekswaarden) met multi-touchcontacttypen die in de huidige omgeving worden ondersteund. De tekenreeks-array kan worden gebruikt als gebeurtenistype voor de registratie van gebeurtenislisteners. Mogelijke waarden zijn constanten van de klassen GestureEvent, PressAndTapGestureEvent en TransformGestureEvent (zoals GESTURE_PAN
).
Als de Flash-runtime wordt uitgevoerd in een omgeving die geen ondersteuning biedt voor bewegingen met meerdere aanraakpunten, is de waarde null
.
Opmerking: Bij Mac OS 10.5.3 en hoger retourneert Multitouch.supportedGestures
niet-null-waarden waardoor onterecht de indruk wordt gewekt dat bewegingsgebeurtenissen worden ondersteund, ook al wordt de bewegingsinvoer niet ondersteund door de huidige hardware.
Gebruik deze eigenschap om te testen op ondersteuning voor bewegingen met meerdere aanraakpunten. Gebruik vervolgens gebeurtenishandlers voor de beschikbare multi-touchbewegingen. Voor de bewegingen die niet worden ondersteund in de huidige omgeving moet u zoeken naar alternatieve gebeurtenishandlers.
Implementatie
public static function get supportedGestures():Vector.<String>
Verwante API-elementen
flash.events.MouseEvent
flash.events.EventDispatcher.addEventListener()
flash.events.GestureEvent
flash.events.PressAndTapGestureEvent
flash.events.TransformGestureEvent
Voorbeeld ( Hoe dit voorbeeld te gebruiken )
Multitouch.supportedGestures
-vectorarray wijzigt, zodat deze alle beschikbare bewegingen van de huidige software- en hardware-omgeving voor de Flash-runtime bevat. Als de Multitouch.supportedGestures
-vectorarray geen van de TransformGestureEvent-bewegingen bevat, wordt er geen gebeurtenislistener toegevoegd voor die beweging. Voorbeeld van 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 | eigenschap |
supportsGestureEvents:Boolean
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Geeft aan of de huidige omgeving ondersteuning biedt voor aanraakinvoer, zoals het roteren van twee vingers over een touchscreen. Bewegingsgebeurtenissen worden vermeld in de klassen TransformGestureEvent, PressAndTapGestureEvent en GestureEvent.
Opmerking: Bij Mac OS 10.5.3 en hoger is deze waarde altijd true
. Multitouch.supportsGestureEvent
retourneert ook True
als de hardware geen ondersteuning biedt voor bewegingsgebeurtenissen.
Implementatie
public static function get supportsGestureEvents():Boolean
Verwante API-elementen
supportsTouchEvents | eigenschap |
supportsTouchEvents:Boolean
[alleen-lezen] Taalversie: | ActionScript 3.0 |
Runtimeversies: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Geeft aan of de huidige omgeving ondersteuning biedt voor elementaire aanraakinvoer, zoals één tik met een vinger. Aanraakgebeurtenissen zijn opgenomen in de TouchEvent-klasse.
Implementatie
public static function get supportsTouchEvents():Boolean
Verwante API-elementen
Multitouch.supportedGestures
de waarde null
en treedt een runtimefout op doordat null
wordt toegewezen aan de vector van tekenreeksen). Als bewegingsgebeurtenissen wel worden ondersteund, worden de gebeurtenissen van de TransformGestureEvent-klasse weergegeven die in de huidige omgeving worden ondersteund:
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); } } } } }
Wed Jun 13 2018, 11:42 AM Z