Xamarin.Android でのタッチとジェスチャ

今日の多くのデバイスのタッチスクリーンを使用すると、ユーザーは自然で直感的な方法でデバイスと迅速かつ効率的に対話できます。 この操作は、単純なタッチ検出だけでなく、ジェスチャも使用できます。 たとえば、ピンチツーズーム ジェスチャは、ユーザーが拡大または縮小できる 2 本の指で画面の一部をピンチすることによって、この非常に一般的な例です。このガイドでは、Android でのタッチとジェスチャについて説明します。

タッチの概要

iOS と Android は、タッチの処理方法が似ています。 どちらもマルチタッチ (画面上の多くの接触点) と複雑なジェスチャをサポートできます。 このガイドでは、概念における類似点の一部と、両方のプラットフォームでタッチとジェスチャを実装する特異点について説明します。

Android では、 オブジェクトを MotionEvent 使用してタッチ データをカプセル化し、View オブジェクトの メソッドを使用してタッチをリッスンします。

タッチ データのキャプチャに加えて、iOS と Android の両方には、タッチのパターンをジェスチャに解釈するための手段が用意されています。 これらのジェスチャ認識エンジンは、画像の回転やページの回転など、アプリケーション固有のコマンドを解釈するために使用できます。 Android には、いくつかのサポートされているジェスチャと、複雑なカスタム ジェスチャを簡単に追加するためのリソースが用意されています。

Android または iOS のいずれで作業している場合でも、タッチとジェスチャ認識エンジンのどちらを選択するかは、混乱を招く可能性があります。 このガイドでは、一般にジェスチャ認識エンジンに優先順位を付ける必要があることをお勧めします。 ジェスチャ認識エンジンは個別のクラスとして実装されます。これにより、懸念事項の分離が向上し、カプセル化が向上します。 これにより、さまざまなビュー間でロジックを簡単に共有し、記述されるコードの量を最小限に抑えることができます。

このガイドは、オペレーティング システムごとに同様の形式に従います。最初に、タッチ操作が構築される基盤であるため、プラットフォームのタッチ API が導入され、説明されます。 次に、ジェスチャ認識エンジンの世界について説明します。まず、いくつかの一般的なジェスチャを調べるとともに、アプリケーション用のカスタム ジェスチャを作成します。 最後に、低レベルのタッチ追跡を使用して個々の指を追跡し、指ペイント プログラムを作成する方法について説明します。

セクション

まとめ

このガイドでは、Android でのタッチについて調べました。 どちらのオペレーティング システムでも、タッチを有効にする方法とタッチ イベントに応答する方法について学習しました。 次に、Android と iOS の両方で提供されるジェスチャ認識エンジンと、より一般的なシナリオの一部を処理するジェスチャ認識エンジンについて学習しました。 カスタム ジェスチャを作成し、アプリケーションに実装する方法を調べました。 チュートリアルでは、動作している各オペレーティング システムの概念と API を示し、個々の指を追跡する方法についても説明しました。