Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: Получение данных с сервера...
Получение данных с сервера...
flash.ui 

Multitouch  - AS3

Пакетflash.ui
Классpublic final class Multitouch
НаследованиеMultitouch Inheritance Object

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Класс Multitouch упорядочивает и предоставляет информацию о том, поддерживает ли текущая среда обработку контакта от устройств ввода пользователя, включая контакты, у которых есть две или более точки касания (например, пальцы пользователя на сенсорном экране). При взаимодействии с таким устройством, как мобильный телефон или планшетный компьютер с сенсорным экраном, пользователь, как правило, касается экрана пальцами или указывающим устройством. Хотя имеется широкий выбор указывающих устройств, включая мышь или перо, у многих из них есть только одна точка контакта с приложением. Для указывающих устройств с одной точкой контакта события взаимодействия с пользователям могут обрабатываться как событие мыши или используется базовый набор событий прикосновения (так называемых событий «точки касания»). Однако для указывающих устройств с несколькими точками контакта, которые выполняют сложные движения, как в случае с рукой пользователя, среда выполнения Flash поддерживает дополнительный набор API обработки событий жестов. API для обработки взаимодействия пользователя с помощью этих событий жестов включает следующие классы:

  • flash.events.TouchEvent
  • flash.events.GestureEvent
  • flash.events.GesturePhase
  • flash.events.TransformGestureEvent
  • flash.events.PressAndTapGestureEvent

Используйте перечисленные классы при создании кода для обработки событий прикосновения. Класс Multitouch служит для определения поддержки сенсорного взаимодействия в текущей среде и для управления этой поддержкой, если она имеется.

Нельзя создать объект Multitouch непосредственно из кода ActionScript. При вызове функции new Multitouch() выдается исключение.

Примечание. Возможность использования нескольких точек прикосновения не поддерживается для SWF-файлов, встроенных в HTML и выполняемых в ОС Mac OS.

Посмотреть примеры

Дополнительно

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  inputMode : String
[статические] Указывает на то, что используется мультисенсорный режим для обработки событий прикосновения и жестов.
Multitouch
      mapTouchToMouse : Boolean
[статические] Указывает, сопоставляет ли среда выполнения AIR события прикосновения событиям мыши.
Multitouch
  maxTouchPoints : int
[статические] [только для чтения] Максимальное число одновременных точек прикосновения, поддерживаемое текущей средой.
Multitouch
  supportedGestures : Vector.<String>
[статические] [только для чтения] Векторный массив (классифицированный массив строковых значений), содержащий типы мультисенсорного контакта, поддерживаемые в текущей среде.
Multitouch
  supportsGestureEvents : Boolean
[статические] [только для чтения] Указывает, поддерживает ли текущая среда ввод с помощью жестов, таких как вращение двумя пальцами по экрану.
Multitouch
  supportsTouchEvents : Boolean
[статические] [только для чтения] Указывает, поддерживает ли текущая среда базовый ввод с помощью прикосновения, например нажатие одним пальцем.
Multitouch
Общедоступные методы
 МетодОпределено
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
 Inherited
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали.
Object
 Inherited
Возвращает строковое представление заданного объекта.
Object
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Сведения о свойстве

inputMode

свойство
inputMode:String

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Указывает на то, что используется мультисенсорный режим для обработки событий прикосновения и жестов. Используйте это свойство для определения того, как должны отправляться события: как события прикосновения с несколькими точками контакта и конкретные события для разных жестов (таких как поворот или панорамирование), или как события с одной точкой контакта (например, нажатие), или они совсем не должны отправляться (контакт обрабатывается как событие мыши). Чтобы задать это свойство, используйте значения из класса flash.ui.MultitouchInputMode.

Значением по умолчанию является gesture.



Реализация
    public static function get inputMode():String
    public static function set inputMode(value:String):void

Связанные элементы API


Пример  ( Использование этого примера )
Следующий код отображает сообщение, когда пользователь прикасается к квадрату, нарисованному в mySprite, на сенсорном экране.
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

свойство 
mapTouchToMouse:Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 3

Указывает, сопоставляет ли среда выполнения AIR события прикосновения событиям мыши.

Когда установлено значение true (значение по умолчанию), среда выполнения AIR отправляет событие мыши в дополнение к событию прикосновения для ввода прикосновением. Когда установлено значение false, среда выполнения не отправляет дополнительное событие мыши. Задание для этого свойства значения false может привести к неправильной работе существующего кода, библиотек и сред, зависящих от событий мыши, на устройствах, поддерживающих ввод прикосновением.



Реализация
    public static function get mapTouchToMouse():Boolean
    public static function set mapTouchToMouse(value:Boolean):void

Связанные элементы API

maxTouchPoints

свойство 
maxTouchPoints:int  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Максимальное число одновременных точек прикосновения, поддерживаемое текущей средой.

Примечание. На платформе Android для устройств, поддерживающих больше двух точек касания, возвращается значение 2.



Реализация
    public static function get maxTouchPoints():int

Связанные элементы API

supportedGestures

свойство 
supportedGestures:Vector.<String>  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Векторный массив (классифицированный массив строковых значений), содержащий типы мультисенсорного контакта, поддерживаемые в текущей среде. Массив строк может использоваться в качестве типов событий для регистрации прослушивателей событий. Возможные значения являются константами классов GestureEvent, PressAndTapGestureEvent и TransformGestureEvent (например, GESTURE_PAN).

Если среда выполнения Flash находится в среде, не поддерживающей мультисенсорные жесты, это свойство имеет значение null.

Примечание. В ОС Mac OS 10.5.3 и более поздних версий Multitouch.supportedGestures возвращает ненулевые значения (которые могут ошибочно указывать на поддержку событий жестов), даже если текущее аппаратное обеспечение не поддерживает ввод с помощью жестов.

Используйте это свойство, чтобы проверить наличие поддержки мультисенсорных жестов. Затем, используйте обработчики событий для доступных мультисенсорных жестов. Если некоторые жесты не поддерживаются текущей средой, для них потребуется создать альтернативную обработку событий.



Реализация
    public static function get supportedGestures():Vector.<String>

Связанные элементы API


Пример  ( Использование этого примера )
Следующий код добавляет соответствующие прослушиватели событий для каждого поддерживаемого жеста в текущей среде. Содержимое векторного массива Multitouch.supportedGestures изменяется: в него добавляются все жесты, доступные в текущей программной и аппаратной среде для среды выполнения Flash. Если векторный массив Multitouch.supportedGestures не содержит одного из жестов TransformGestureEvent, для такого жеста не регистрируется прослушиватель событий. Этот пример предоставила Холли Шински (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

свойство 
supportsGestureEvents:Boolean  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Указывает, поддерживает ли текущая среда ввод с помощью жестов, таких как вращение двумя пальцами по экрану. События жестов перечислены в классах TransformGestureEvent, PressAndTapGestureEvent и GestureEvent.

Примечание. В ОС Mac OS 10.5.3 и более поздних версий это свойство всегда имеет значение true. Свойство Multitouch.supportsGestureEvent возвращает значение true, даже если аппаратные средства не поддерживают события жестов.



Реализация
    public static function get supportsGestureEvents():Boolean

Связанные элементы API

supportsTouchEvents

свойство 
supportsTouchEvents:Boolean  [только для чтения]

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 10.1, AIR 2, Flash Lite 4

Указывает, поддерживает ли текущая среда базовый ввод с помощью прикосновения, например нажатие одним пальцем. События прикосновения перечислены в классе TouchEvent.



Реализация
    public static function get supportsTouchEvents():Boolean

Связанные элементы API

MultitouchExample.as

Следующий код сначала проверяет, поддерживаются ли события жестов (если устройство не поддерживает события жестов, векторный массив Multitouch.supportedGestures возвращает значение null, и присвоение значения null вектору строк приводит к появлению ошибки во время выполнения). Если события жестов поддерживаются, отображаются события из класса TransformGestureEvent, поддерживаемые в текущей среде:
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);
                }
            }
        }
    }
}




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.