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()释放,或者在窗口失去焦点时自动丢失。
Java文档android.view.View.requestPointerCapture()。
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。
适用于
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 参考。android.view.View.requestPointerCapture
本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。