タッチのサポートの検出

Flash Player 10.1 以降、Adobe AIR 2 以降

Multitouch クラス のプロパティを使用して、アプリケーションで処理するタッチ入力の範囲を設定します。次に、現在の環境をテストし、ActionScript で処理するイベントがサポートされていることを確認します。具体的には、まずアプリケーションのタッチ入力のタイプを判定します。オプションには、タッチポイント、ジェスチャ、なし(すべてのタッチ入力をマウスクリックとして解釈し、マウスイベントハンドラーのみを使用します)が用意されています。次に、Multitouch クラスのプロパティとメソッドを使用して、ランタイム環境がアプリケーションで必要なタッチ入力をサポートしていることを確認します。タッチ入力のタイプがサポートされ(ジェスチャを解釈できるかどうかなど)適切に応答することを、ランタイム環境でテストします。
注意: Multitouch クラスのプロパティは静的プロパティです。どのクラスのインスタンスにも属しません。例えば、「Multitouch.プロパティ」のようなシンタックスで使用します。以下を参照してください。
var touchSupport:Boolean = Multitouch.supportsTouchEvents;

入力タイプの設定

タッチイベントには多くのエレメントやフェーズが含まれている可能性があるので、Flash ランタイムでは解釈するタッチ入力のタイプを把握している必要があります。タッチ対応スクリーンに指でタッチするだけで、ランタイムはタッチイベントを送出するか。または、ジェスチャが生成されるまで待機するのか。または、タッチをマウスダウンイベントとして追跡するか。タッチ入力をサポートしているアプリケーションは、処理するタッチイベントのタイプを判定して、Flash ランタイムに伝える必要があります。タッチ入力タイプを判定してランタイムに伝えるには、 Multitouch.inputMode プロパティを使用します。入力モードには、以下に示す 3 つのオプションのいずれかを指定できます。
なし
タッチイベントに対して特別な処理は提供されません。 Multitouch.inputMode=MultitouchInputMode.NONE と設定し、MouseEvent クラスを使用して入力を処理します。

単一のタッチポイント
すべてのタッチ入力は個別に解釈され、すべてのタッチポイントが追跡および処理されます。 Multitouch.inputMode=MultitouchInputMode.TOUCH_POINT と設定し、TouchEvent クラスを使用して入力を処理します。

ジェスチャ入力
デバイスまたはオペレーティングシステムは、入力を、画面上における指の動きの複雑な形態として解釈します。デバイスまたはオペレーティングシステムは、これらの動きを組み合わせて、単一のジェスチャ入力イベントに割り当てます。 Multitouch.inputMode=MultitouchInputMode.GESTURE と設定し、TransformGestureEvent、PressAndTapGestureEvent または GestureEvent の各クラスを使用して入力を処理します。

タッチイベントを処理するには、事前に タッチイベント処理 を参照し、 Multitouch.inputMode プロパティを使用して入力タイプを設定する例を確認してください。

タッチ入力のサポートのテスト

Multitouch クラスには、他にも、現在の環境のタッチサポートに合わせてアプリケーションを微調整するための値を提供するプロパティがあります。Flash ランタイムでは、対応可能な同時タッチポイント数または利用可能なジェスチャ数の値を設定します。現在のランタイム環境で、アプリケーションに必要なタッチイベント処理がサポートされていない場合は、ユーザーに代替機能を提供してください。例えば、マウスイベント処理を使用するか、現在の環境で対応 / 未対応の機能に関する情報を提供します。

また、キーボード、タッチまたはマウス対応の API を使用することもできます。 入力タイプの検出 を参照してください。

互換性テストについて詳しくは、 トラブルシューティング を参照してください。