View.RequestPointerCapture メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
| 名前 | 説明 |
|---|---|
| RequestPointerCapture() |
ポインター キャプチャ モードを要求します。 |
| RequestPointerCapture(Int32) |
指定したモードでポインター キャプチャを要求します。 |
RequestPointerCapture()
ポインター キャプチャ モードを要求します。
[Android.Runtime.Register("requestPointerCapture", "()V", "GetRequestPointerCaptureHandler", ApiSince=26)]
public virtual void RequestPointerCapture();
[<Android.Runtime.Register("requestPointerCapture", "()V", "GetRequestPointerCaptureHandler", ApiSince=26)>]
abstract member RequestPointerCapture : unit -> unit
override this.RequestPointerCapture : unit -> unit
- 属性
注釈
ポインター キャプチャ モードを要求します。
ウィンドウにポインター キャプチャがある場合、マウス ポインター アイコンは消え、位置は変更されません。 ポインター キャプチャを有効にすると、次の方法で入力デバイスの動作が変更されます。 <ul><li>マウスからのイベントはソース InputDevice#SOURCE_MOUSE_RELATIVEと共に配信され、相対的な位置の変更は MotionEvent#getX と MotionEvent#getY.</li>
<li>タッチパッドまたはトラックパッドからのイベントはソース InputDevice#SOURCE_TOUCHPADと共に配信されます。この場合、タッチパッド上の各ポインターの絶対位置は MotionEvent#getX(int) と MotionEvent#getY(int)を通じて使用でき、相対的な動きは MotionEvent#AXIS_RELATIVE_X と MotionEvent#AXIS_RELATIVE_Y.<に格納されます。/li>
<li>タッチスクリーンなどの他の種類のデバイスからのイベントは影響を受けません。</li></ul>
ポインター キャプチャが変更されると、接続されているマウスとトラックパッドのデバイスが再構成され、それらのプロパティ (ソースやモーション範囲など) が変更される可能性があります。 デバイスが変更されたときに通知を受け取る android.hardware.input.InputManager.InputDeviceListener を使用し (ポインター キャプチャを有効または無効にした後に発生する可能性があります)、 InputDevice#getDevice(int) を使用して更新された InputDeviceを取得します。
ポインター キャプチャによってキャプチャされたイベントは、OnCapturedPointerListener#onCapturedPointer(View, MotionEvent)が設定されている場合はOnCapturedPointerListenerにディスパッチされ、それ以外の場合は#onCapturedPointerEvent(MotionEvent)にディスパッチされます。
ウィンドウに既にポインター キャプチャがある場合、この呼び出しは何も行いません。
キャプチャは #releasePointerCapture()を通じて解放されるか、ウィンドウがフォーカスを失うと自動的に失われます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
RequestPointerCapture(Int32)
指定したモードでポインター キャプチャを要求します。
[Android.Runtime.Register("requestPointerCapture", "(I)V", "GetRequestPointerCapture_IHandler", ApiSince=37)]
public virtual void RequestPointerCapture(int mode);
[<Android.Runtime.Register("requestPointerCapture", "(I)V", "GetRequestPointerCapture_IHandler", ApiSince=37)>]
abstract member RequestPointerCapture : int -> unit
override this.RequestPointerCapture : int -> unit
パラメーター
- mode
- Int32
ポインターをキャプチャするモード。タッチパッドからのイベントの配信方法を決定します。 値は次のいずれかです: POINTER_CAPTURE_MODE_UNCAPTURED;POINTER_CAPTURE_MODE_ABSOLUTE;POINTER_CAPTURE_MODE_RELATIVE
- 属性
注釈
指定したモードでポインター キャプチャを要求します。
ウィンドウにポインター キャプチャがある場合、マウス ポインター アイコンは消え、位置は変更されません。 ポインター キャプチャを有効にすると、次の方法で入力デバイスの動作が変更されます。マウスからのイベントはソース InputDevice.SOURCE_MOUSE_RELATIVEと共に配信され、相対位置の変更は MotionEvent.getX と MotionEvent.getY を通じて使用できます。タッチパッド (トラックパッドとも呼ばれます) からのイベントは、選択したポインター キャプチャ モードに従って配信されます。 詳細については、POINTER_CAPTURE_MODE_RELATIVEとPOINTER_CAPTURE_MODE_ABSOLUTEを参照してください。タッチスクリーンなど、他の種類のデバイスからのイベントは影響を受けません。
このモードでは、ポインターの弾道曲線とユーザーのポインター速度設定は適用されません。
ポインター キャプチャが変更されると、接続されているマウスとタッチパッドのデバイスが再構成され、それらのプロパティ (ソースやモーション範囲など) が変更される可能性があります。 InputManager.InputDeviceListener を使用して、デバイスが変更されたときに通知を受け取り (ポインター キャプチャを有効または無効にした後に発生する可能性があります)、InputDevice.getDevice(int) を使用して更新された InputDevice を取得します。
ポインター キャプチャによってキャプチャされたイベントは、OnCapturedPointerListener が設定されている場合は OnCapturedPointerListener.onCapturedPointer(View,MotionEvent) に、それ以外の場合は onCapturedPointerEvent(MotionEvent) にディスパッチされます。
ウィンドウに同じモードのポインター キャプチャが既に存在する場合、この呼び出しは何も行いません。 別のモードで既にポインター キャプチャがある場合は、新しいモードに移行します。
キャプチャは releasePointerCapture() を通じて解放されるか、ウィンドウがフォーカスを失うと自動的に失われます。
android.view.View.requestPointerCaptureの Android リファレンス。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。