pub struct InputEvent { /* private fields */ }
Expand description
输入事件的通用基类。
Implementations§
Source§impl InputEvent
impl InputEvent
Sourcepub fn get_device_id(&self) -> i32
pub fn get_device_id(&self) -> i32
获取此事件所来自设备的 ID。ID 为零表示事件不是来自物理设备并映射到默认键盘映射。其他数字是任意的,您不应该依赖这些值。 返回:设备 ID。
Sourcepub fn get_source(&self) -> i32
pub fn get_source(&self) -> i32
获取事件源。 返回:事件源或输入设备。如果未知,则返回 SOURCE_UNKNOWN。
Sourcepub fn set_source(&self, source: i32)
pub fn set_source(&self, source: i32)
修改事件的来源。
source
新来源。
Sourcepub fn is_from_source(&self, source: i32) -> bool
pub fn is_from_source(&self, source: i32) -> bool
确定事件是否来自给定的源。
返回:事件是否来自给定的源。
source
要检查的输入源。这可以是特定的设备类型,例如 InputDevice.SOURCE_TOUCH_NAVIGATION,也可以是更通用的设备类,例如 InputDevice.SOURCE_CLASS_POINTER。
Sourcepub fn get_display_id(&self) -> i32
pub fn get_display_id(&self) -> i32
获取事件的显示 ID。 返回:与事件关联的显示 ID。
Sourcepub fn set_display_id(&self, display_id: i32)
pub fn set_display_id(&self, display_id: i32)
修改与事件关联的显示 ID
display_id
Sourcepub fn recycle(&self)
pub fn recycle(&self)
回收事件。此方法仅应由系统使用,因为应用程序不希望回收 KeyEvent 对象,但可以回收 MotionEvent 对象。 有关详细信息,请参阅 KeyEvent.recycle()。
Sourcepub fn recycle_if_needed_after_dispatch(&self)
pub fn recycle_if_needed_after_dispatch(&self)
在将事件分发给应用程序后,如果合适,则有条件地回收事件。如果事件是 MotionEvent,则回收该事件。如果事件是 KeyEvent,则不回收该事件,因为应用程序希望按键事件是不可变的,因此一旦将事件分发给应用程序,我们就不能再回收它了。
Sourcepub fn is_tainted(&self) -> bool
pub fn is_tainted(&self) -> bool
获取一个私有标志,该标志指示系统何时检测到此输入事件可能与先前传递的输入事件的序列不一致,例如,当发送了按键释放事件但按键未按下时,或者当发送了指针移动事件但指针未按下时。 返回:如果此事件被污染,则返回 True。
Sourcepub fn set_tainted(&self, tainted: bool)
pub fn set_tainted(&self, tainted: bool)
设置一个私有标志,指示系统何时检测到此输入事件可能与先前传递的输入事件的序列不一致,例如,当发送了按键释放事件但按键未按下时,或者当发送了指针移动事件但指针未按下时。
tainted
如果此事件被污染,则为 True。
Sourcepub fn get_event_time(&self) -> i64
pub fn get_event_time(&self) -> i64
以 android.os.SystemClock.uptimeMillis 时间基准查询此事件发生的时间。 返回:以 android.os.SystemClock.uptimeMillis 时间基准返回此事件发生的时间。
Sourcepub fn get_event_time_nanos(&self) -> i64
pub fn get_event_time_nanos(&self) -> i64
查询此事件发生的时间,以 android.os.SystemClock.uptimeMillis 时间为基础,但精度为纳秒(而不是毫秒)。该值以纳秒为精度,但可能不具有纳秒的精度。 返回:返回此事件发生的时间,以 android.os.SystemClock.uptimeMillis 时间为基础,但精度为纳秒(而不是毫秒)。
Sourcepub fn get_sequence_number(&self) -> i32
pub fn get_sequence_number(&self) -> i32
获取此事件的唯一序列号。进程创建或接收的每个输入事件都有唯一的序列号。此外,每次回收事件对象时都会获得一个新的序列号。序列号仅保证在进程内本地唯一。打包事件时不会保留序列号。 返回:此事件的唯一序列号。