droid_wrap::android::view

Struct InputEvent

Source
pub struct InputEvent { /* private fields */ }
Expand description

输入事件的通用基类。

Implementations§

Source§

impl InputEvent

Source

pub fn get_device_id(&self) -> i32

获取此事件所来自设备的 ID。ID 为零表示事件不是来自物理设备并映射到默认键盘映射。其他数字是任意的,您不应该依赖这些值。 返回:设备 ID。

Source

pub fn get_source(&self) -> i32

获取事件源。 返回:事件源或输入设备。如果未知,则返回 SOURCE_UNKNOWN。

Source

pub fn set_source(&self, source: i32)

修改事件的来源。 source 新来源。

Source

pub fn is_from_source(&self, source: i32) -> bool

确定事件是否来自给定的源。 返回:事件是否来自给定的源。 source 要检查的输入源。这可以是特定的设备类型,例如 InputDevice.SOURCE_TOUCH_NAVIGATION,也可以是更通用的设备类,例如 InputDevice.SOURCE_CLASS_POINTER。

Source

pub fn get_display_id(&self) -> i32

获取事件的显示 ID。 返回:与事件关联的显示 ID。

Source

pub fn set_display_id(&self, display_id: i32)

修改与事件关联的显示 ID display_id

Source

pub fn recycle(&self)

回收事件。此方法仅应由系统使用,因为应用程序不希望回收 KeyEvent 对象,但可以回收 MotionEvent 对象。 有关详细信息,请参阅 KeyEvent.recycle()。

Source

pub fn recycle_if_needed_after_dispatch(&self)

在将事件分发给应用程序后,如果合适,则有条件地回收事件。如果事件是 MotionEvent,则回收该事件。如果事件是 KeyEvent,则不回收该事件,因为应用程序希望按键事件是不可变的,因此一旦将事件分发给应用程序,我们就不能再回收它了。

Source

pub fn is_tainted(&self) -> bool

获取一个私有标志,该标志指示系统何时检测到此输入事件可能与先前传递的输入事件的序列不一致,例如,当发送了按键释放事件但按键未按下时,或者当发送了指针移动事件但指针未按下时。 返回:如果此事件被污染,则返回 True。

Source

pub fn set_tainted(&self, tainted: bool)

设置一个私有标志,指示系统何时检测到此输入事件可能与先前传递的输入事件的序列不一致,例如,当发送了按键释放事件但按键未按下时,或者当发送了指针移动事件但指针未按下时。 tainted 如果此事件被污染,则为 True。

Source

pub fn get_event_time(&self) -> i64

以 android.os.SystemClock.uptimeMillis 时间基准查询此事件发生的时间。 返回:以 android.os.SystemClock.uptimeMillis 时间基准返回此事件发生的时间。

Source

pub fn get_event_time_nanos(&self) -> i64

查询此事件发生的时间,以 android.os.SystemClock.uptimeMillis 时间为基础,但精度为纳秒(而不是毫秒)。该值以纳秒为精度,但可能不具有纳秒的精度。 返回:返回此事件发生的时间,以 android.os.SystemClock.uptimeMillis 时间为基础,但精度为纳秒(而不是毫秒)。

Source

pub fn cancel(&self)

将输入事件标记为已取消。

Source

pub fn get_sequence_number(&self) -> i32

获取此事件的唯一序列号。进程创建或接收的每个输入事件都有唯一的序列号。此外,每次回收事件对象时都会获得一个新的序列号。序列号仅保证在进程内本地唯一。打包事件时不会保留序列号。 返回:此事件的唯一序列号。

Source

pub fn get_id(&self) -> i32

获取此事件的 ID。此 ID 在事件创建时生成,并保存到事件的最后阶段。它不会因为事件跨越进程边界而改变,但在进行修改复制时应该会改变。为了避免将应用程序使用情况暴露给其他进程,此 ID 由 CSPRNG 生成。因此,虽然 ID 冲突的可能性相当低,但不能 100% 保证此 ID 的唯一性。经验法则是不要依赖生产逻辑的唯一性,而要依赖跟踪事件(例如日志记录和分析)的良好来源。 返回:此事件的 ID。

Methods from Deref<Target = GlobalRef>§

Source

pub fn as_obj(&self) -> &JObject<'static>

Get the object from the global ref

This borrows the ref and prevents it from being dropped as long as the JObject sticks around.

Methods from Deref<Target = JObject<'static>>§

Source

pub fn as_raw(&self) -> *mut _jobject

Returns the raw JNI pointer.

Trait Implementations§

Source§

impl Debug for InputEvent

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for InputEvent

Source§

type Target = GlobalRef

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl From<&GlobalRef> for InputEvent

Source§

fn from(obj: &GlobalRef) -> Self

Converts to this type from the input type.
Source§

impl Into<GlobalRef> for &InputEvent

Source§

fn into(self) -> GlobalRef

Converts this type into the (usually inferred) input type.
Source§

impl JObjNew for InputEvent

Source§

type Fields = ()

字段类型
Source§

fn _new(this: &GlobalRef, fields: Self::Fields) -> Self

从java对象创建本地对象。 this java对象引用。
Source§

fn null() -> Self
where Self: Sized, Self::Fields: Default,

创建空对象。
Source§

impl JObjRef for InputEvent

Source§

fn java_ref(&self) -> GlobalRef

获取java对象引用。
Source§

impl JType for InputEvent

Source§

const CLASS: &'static str = "android/view/InputEvent"

java类的名称。
Source§

const OBJECT_SIG: &'static str = "Landroid/view/InputEvent;"

对象的签名描述。
Source§

type Error = Error

错误类型。
Source§

const DIM: u8 = 0u8

数组维度,0表示不是数组
Source§

impl PartialEq for InputEvent

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl ToString for InputEvent

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.