输入
摘要
类型定义 |
|
---|---|
AInputEvent
|
typedefstruct AInputEvent
输入事件。 |
AInputQueue
|
typedefstruct AInputQueue
输入队列。 |
函数 |
|
---|---|
AInputEvent_getDeviceId(const AInputEvent *event)
|
int32_t
获取输入事件来源设备的 ID。
|
AInputEvent_getSource(const AInputEvent *event)
|
int32_t
获取输入事件源。
|
AInputEvent_getType(const AInputEvent *event)
|
int32_t
输入事件访问器。
|
AInputEvent_release(const AInputEvent *event)
|
void
释放由 AKeyEvent_fromJava() 和 AMotionEvent_fromJava() 创建的接口对象。
|
AInputEvent_toJava(JNIEnv *env, const AInputEvent *aInputEvent)
|
jobject
创建指定原生 AInputEvent 的 Java android.view.InputEvent 对象副本。
|
AInputQueue_attachLooper(AInputQueue *queue, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data)
|
void
将此输入队列添加到 Looper 进行处理。
|
AInputQueue_detachLooper(AInputQueue *queue)
|
void
将输入队列从当前附加到的 Looper 中移除。
|
AInputQueue_finishEvent(AInputQueue *queue, AInputEvent *event, int handled)
|
void
报告已完成给定事件的分发。
|
AInputQueue_fromJava(JNIEnv *env, jobject inputQueue)
|
返回与提供的 Java InputQueue 对象关联的 AInputQueue* 对象。
|
AInputQueue_getEvent(AInputQueue *queue, AInputEvent **outEvent)
|
int32_t
返回队列中下一个可用的事件。
|
AInputQueue_hasEvents(AInputQueue *queue)
|
int32_t
如果输入队列中有一个或多个可用事件,则返回 true。
|
AInputQueue_preDispatchEvent(AInputQueue *queue, AInputEvent *event)
|
int32_t
发送用于标准预分发的键,也就是说,可能先将其发送给当前 IME 并在应用之前使用。
|
AKeyEvent_fromJava(JNIEnv *env, jobject keyEvent)
|
const AInputEvent *
创建指定 Java android.view.KeyEvent 的原生 AInputEvent* 对象副本。
|
AKeyEvent_getAction(const AInputEvent *key_event)
|
int32_t
获取按键事件操作。
|
AKeyEvent_getDownTime(const AInputEvent *key_event)
|
int64_t
获取最近按键按下事件发生的时间,时间基准为 java.lang.System.nanoTime()。
|
AKeyEvent_getEventTime(const AInputEvent *key_event)
|
int64_t
获取此事件发生的时间,时间基准为 java.lang.System.nanoTime()。
|
AKeyEvent_getFlags(const AInputEvent *key_event)
|
int32_t
获取按键事件标志。
|
AKeyEvent_getKeyCode(const AInputEvent *key_event)
|
int32_t
获取按键事件的键码。
|
AKeyEvent_getMetaState(const AInputEvent *key_event)
|
int32_t
获取 meta 键状态。
|
AKeyEvent_getRepeatCount(const AInputEvent *key_event)
|
int32_t
获取事件的重复次数。
|
AKeyEvent_getScanCode(const AInputEvent *key_event)
|
int32_t
获取此按键事件的硬件键 ID。
|
AMotionEvent_fromJava(JNIEnv *env, jobject motionEvent)
|
const AInputEvent *
创建指定 Java android.view.MotionEvent 的原生 AInputEvent* 对象副本。
|
AMotionEvent_getAction(const AInputEvent *motion_event)
|
int32_t
获取运动事件操作码和指针索引的组合。
|
AMotionEvent_getActionButton(const AInputEvent *motion_event)
|
int32_t
获取运动事件的操作按钮。
|
AMotionEvent_getAxisValue(const AInputEvent *motion_event, int32_t axis, size_t pointer_index)
|
float
获取给定指针索引的请求轴的值。
|
AMotionEvent_getButtonState(const AInputEvent *motion_event)
|
int32_t
获取所有被按下按钮的按钮状态。
|
AMotionEvent_getClassification(const AInputEvent *motion_event)
|
int32_t
返回当前手势的分类。
|
AMotionEvent_getDownTime(const AInputEvent *motion_event)
|
int64_t
获取用户最初按下以开始一系列位置事件的时间,时间基准为 java.lang.System.nanoTime()。
|
AMotionEvent_getEdgeFlags(const AInputEvent *motion_event)
|
int32_t
获取一个位字段,指示此运动事件触及了哪些边缘(如果有)。
|
AMotionEvent_getEventTime(const AInputEvent *motion_event)
|
int64_t
获取生成此特定事件的时间,时间基准为 java.lang.System.nanoTime()。
|
AMotionEvent_getFlags(const AInputEvent *motion_event)
|
int32_t
获取运动事件标志。
|
AMotionEvent_getHistoricalAxisValue(const AInputEvent *motion_event, int32_t axis, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的请求轴的历史值。
|
AMotionEvent_getHistoricalEventTime(const AInputEvent *motion_event, size_t history_index)
|
int64_t
获取此事件与上一个事件之间发生历史运动的时间,时间基准为 java.lang.System.nanoTime()。
|
AMotionEvent_getHistoricalOrientation(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的触控区域和工具区域的历史方向(以弧度为单位,从垂直方向顺时针计算)。
|
AMotionEvent_getHistoricalPressure(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史压力。
|
AMotionEvent_getHistoricalRawX(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史原始 X 坐标。
|
AMotionEvent_getHistoricalRawY(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史原始 Y 坐标。
|
AMotionEvent_getHistoricalSize(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的近似尺寸的当前缩放值。
|
AMotionEvent_getHistoricalToolMajor(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、描述给定指针索引接近工具尺寸的椭圆长轴的历史长度。
|
AMotionEvent_getHistoricalToolMinor(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、描述给定指针索引接近工具尺寸的椭圆短轴的历史长度。
|
AMotionEvent_getHistoricalTouchMajor(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、描述给定指针索引接触点触控区域的椭圆长轴的历史长度。
|
AMotionEvent_getHistoricalTouchMinor(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、描述给定指针索引接触点触控区域的椭圆短轴的历史长度。
|
AMotionEvent_getHistoricalX(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史 X 坐标。
|
AMotionEvent_getHistoricalY(const AInputEvent *motion_event, size_t pointer_index, size_t history_index)
|
float
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史 Y 坐标。
|
AMotionEvent_getHistorySize(const AInputEvent *motion_event)
|
size_t
获取此事件中的历史点数量。
|
AMotionEvent_getMetaState(const AInputEvent *motion_event)
|
int32_t
获取生成事件时生效的所有 meta/修饰键的状态。
|
AMotionEvent_getOrientation(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取给定指针索引的触控区域和工具区域的当前方向(以弧度为单位,从垂直方向顺时针计算)。
|
AMotionEvent_getPointerCount(const AInputEvent *motion_event)
|
size_t
获取此事件中包含的数据指针数量。
|
AMotionEvent_getPointerId(const AInputEvent *motion_event, size_t pointer_index)
|
int32_t
获取与此事件中特定指针数据索引关联的指针标识符。
|
AMotionEvent_getPressure(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取此事件对于给定指针索引的当前压力。
|
AMotionEvent_getRawX(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取此事件的原始原始 X 坐标。
|
AMotionEvent_getRawY(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取此事件的原始原始 X 坐标。
|
AMotionEvent_getSize(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取给定指针索引的近似尺寸的当前缩放值。
|
AMotionEvent_getToolMajor(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取描述给定指针索引接近工具尺寸的椭圆长轴的当前长度。
|
AMotionEvent_getToolMinor(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取描述给定指针索引接近工具尺寸的椭圆短轴的当前长度。
|
AMotionEvent_getToolType(const AInputEvent *motion_event, size_t pointer_index)
|
int32_t
获取给定指针索引的指针工具类型。
|
AMotionEvent_getTouchMajor(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取描述给定指针索引接触点触控区域的椭圆长轴的当前长度。
|
AMotionEvent_getTouchMinor(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取描述给定指针索引接触点触控区域的椭圆短轴的当前长度。
|
AMotionEvent_getX(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取此事件对于给定指针索引的当前 X 坐标。
|
AMotionEvent_getXOffset(const AInputEvent *motion_event)
|
float
获取 X 坐标偏移量。
|
AMotionEvent_getXPrecision(const AInputEvent *motion_event)
|
float
获取报告的 X 坐标精度。
|
AMotionEvent_getY(const AInputEvent *motion_event, size_t pointer_index)
|
float
获取此事件对于给定指针索引的当前 Y 坐标。
|
AMotionEvent_getYOffset(const AInputEvent *motion_event)
|
float
获取 Y 坐标偏移量。
|
AMotionEvent_getYPrecision(const AInputEvent *motion_event)
|
float
获取报告的 Y 坐标精度。
|
枚举
匿名枚举 32
在android/input.h
中声明
Anonymous Enum 32
键状态(可通过查询特定键码、扫描码或开关的当前状态返回)。
属性 | |
---|---|
AKEY_STATE_DOWN |
键已按下。 |
AKEY_STATE_UNKNOWN |
键状态未知或请求的键本身不受支持。 |
AKEY_STATE_UP |
键已抬起。 |
AKEY_STATE_VIRTUAL |
键已按下,但它是系统正在模拟的虚拟按键。 |
匿名枚举 33
在android/input.h
中声明
Anonymous Enum 33
Meta 键/修饰键状态。
属性 | |
---|---|
AMETA_ALT_LEFT_ON |
此掩码用于检查是否按下了左 ALT meta 键。 |
AMETA_ALT_ON |
此掩码用于检查是否按下了某个 ALT meta 键。 |
AMETA_ALT_RIGHT_ON |
此掩码用于检查是否按下了右 ALT meta 键。 |
AMETA_CAPS_LOCK_ON |
此掩码用于检查 CAPS LOCK meta 键是否开启。 |
AMETA_CTRL_LEFT_ON |
此掩码用于检查是否按下了左 CTRL meta 键。 |
AMETA_CTRL_ON |
此掩码用于检查是否按下了某个 CTRL meta 键。 |
AMETA_CTRL_RIGHT_ON |
此掩码用于检查是否按下了右 CTRL meta 键。 |
AMETA_FUNCTION_ON |
此掩码用于检查是否按下了 FUNCTION meta 键。 |
AMETA_META_LEFT_ON |
此掩码用于检查左侧 META 元键是否已按下。 |
AMETA_META_ON |
此掩码用于检查任一 META 元键是否已按下。 |
AMETA_META_RIGHT_ON |
此掩码用于检查右侧 META 元键是否已按下。 |
AMETA_NONE |
没有元键被按下。 |
AMETA_NUM_LOCK_ON |
此掩码用于检查 NUM LOCK 元键是否已开启。 |
AMETA_SCROLL_LOCK_ON |
此掩码用于检查 SCROLL LOCK 元键是否已开启。 |
AMETA_SHIFT_LEFT_ON |
此掩码用于检查左侧 SHIFT 元键是否已按下。 |
AMETA_SHIFT_ON |
此掩码用于检查任一 SHIFT 元键是否已按下。 |
AMETA_SHIFT_RIGHT_ON |
此掩码用于检查右侧 SHIFT 元键是否已按下。 |
AMETA_SYM_ON |
此掩码用于检查 SYM 元键是否已按下。 |
匿名枚举 34
在android/input.h
中声明
Anonymous Enum 34
输入事件类型。
属性 | |
---|---|
AINPUT_EVENT_TYPE_CAPTURE |
捕获事件。 |
AINPUT_EVENT_TYPE_DRAG |
拖动事件。 |
AINPUT_EVENT_TYPE_FOCUS |
焦点事件。 |
AINPUT_EVENT_TYPE_KEY |
表示输入事件是按键事件。 |
AINPUT_EVENT_TYPE_MOTION |
表示输入事件是运动事件。 |
AINPUT_EVENT_TYPE_TOUCH_MODE |
触控模式事件。 |
匿名枚举 35
在android/input.h
中声明
Anonymous Enum 35
按键事件操作。
属性 | |
---|---|
AKEY_EVENT_ACTION_DOWN |
按键已被按下。 |
AKEY_EVENT_ACTION_MULTIPLE |
发生了一系列重复按键事件,或正在传递复杂的字符串。 按键事件的 repeat_count 属性包含给定按键代码应执行的次数。 |
AKEY_EVENT_ACTION_UP |
按键已被释放。 |
匿名枚举 36
在android/input.h
中声明
Anonymous Enum 36
按键事件标志。
属性 | |
---|---|
AKEY_EVENT_FLAG_CANCELED |
与抬起按键事件关联时,表示按键按下已被取消。 通常用于虚拟触摸屏按键,用户可以从虚拟按键区域滑到显示屏上:在这种情况下,应用程序将收到一个已取消的抬起事件,并且不应执行通常与该按键关联的操作。请注意,为此,应用程序在收到抬起事件或长按超时前不得对按键执行任何操作。 |
AKEY_EVENT_FLAG_CANCELED_LONG_PRESS |
当按键事件因按下期间执行了长按操作而设置了 AKEY_EVENT_FLAG_CANCELED 时设置此标志。 |
AKEY_EVENT_FLAG_EDITOR_ACTION |
此掩码用于兼容性,用于识别来自输入法(IME)的回车键,其回车键已被自动标记为“next”或“done”。 这允许 TextView 为旧版应用程序将这些事件作为普通回车键分发,但在接收它们时仍执行适当的操作。 |
AKEY_EVENT_FLAG_FALLBACK |
当合成按键事件以实现应用程序未处理的事件的默认行为时设置此标志。 回退按键事件由未处理的轨迹球运动(用于模拟方向键盘)和按键映射中声明的某些未处理的按键按下生成(例如 Num Lock 关闭时特殊功能的数字键盘按键)。 |
AKEY_EVENT_FLAG_FROM_SYSTEM |
如果已知事件来自系统的可信部分,则设置此掩码。 也就是说,已知事件来自用户,并且无法被第三方组件伪造。 |
AKEY_EVENT_FLAG_KEEP_TOUCH_MODE |
如果我们不希望按键事件导致我们离开触控模式,则设置此掩码。 |
AKEY_EVENT_FLAG_LONG_PRESS |
长按超时后发生的第一次按键重复会设置此标志。 |
AKEY_EVENT_FLAG_SOFT_KEYBOARD |
如果按键事件是由软键盘生成的,则设置此掩码。 |
AKEY_EVENT_FLAG_TRACKING |
对于 AKEY_EVENT_ACTION_UP 事件设置,表示此事件的按键代码仍在从最初的按下事件跟踪。 也就是说,有人请求在按键按下时开始跟踪,并且长按尚未导致跟踪被取消。 |
AKEY_EVENT_FLAG_VIRTUAL_HARD_KEY |
此按键事件是由虚拟(屏幕上)硬键区域生成的。 通常这是触摸屏的一个区域,位于常规显示区域之外,专门用于“硬件”按钮。 |
AKEY_EVENT_FLAG_WOKE_HERE |
如果设备因收到此按键事件而唤醒,则设置此掩码。 |
匿名枚举 37
在android/input.h
中声明
Anonymous Enum 37
运动事件操作。
匿名枚举 38
在android/input.h
中声明
Anonymous Enum 38
运动事件标志。
属性 | |
---|---|
AMOTION_EVENT_FLAG_WINDOW_IS_OBSCURED |
此标志表示接收此运动事件的窗口被其上方另一个可见窗口部分或完全遮挡。 即使事件未直接穿过被遮挡区域,此标志也会设置为 true。对安全性敏感的应用程序可以检查此标志,以识别恶意应用程序可能为了误导用户或劫持触摸而遮挡其部分内容的情况。适当的响应可能是丢弃可疑触摸或采取额外的预防措施来确认用户的实际意图。 |
匿名枚举 39
在android/input.h
中声明
Anonymous Enum 39
运动事件边缘触摸标志。
属性 | |
---|---|
AMOTION_EVENT_EDGE_FLAG_BOTTOM |
标志,表示运动事件与屏幕底部边缘相交。 |
AMOTION_EVENT_EDGE_FLAG_LEFT |
标志,表示运动事件与屏幕左侧边缘相交。 |
AMOTION_EVENT_EDGE_FLAG_NONE |
未与任何边缘相交。 |
AMOTION_EVENT_EDGE_FLAG_RIGHT |
标志,表示运动事件与屏幕右侧边缘相交。 |
AMOTION_EVENT_EDGE_FLAG_TOP |
标志,表示运动事件与屏幕顶部边缘相交。 |
匿名枚举 40
在android/input.h
中声明
Anonymous Enum 40
标识运动事件每个独立轴的常量。
属性 | |
---|---|
AMOTION_EVENT_AXIS_BRAKE |
轴常量:运动事件的制动轴。
|
AMOTION_EVENT_AXIS_DISTANCE |
轴常量:运动事件的距离轴。
|
AMOTION_EVENT_AXIS_GAS |
轴常量:运动事件的油门轴。
|
AMOTION_EVENT_AXIS_GENERIC_1 |
轴常量:运动事件的通用轴 1。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_10 |
轴常量:运动事件的通用轴 10。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_11 |
轴常量:运动事件的通用轴 11。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_12 |
轴常量:运动事件的通用轴 12。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_13 |
轴常量:运动事件的通用轴 13。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_14 |
轴常量:运动事件的通用轴 14。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_15 |
轴常量:运动事件的通用轴 15。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_16 |
轴常量:运动事件的通用轴 16。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_2 |
轴常量:运动事件的通用轴 2。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_3 |
轴常量:运动事件的通用轴 3。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_4 |
轴常量:运动事件的通用轴 4。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_5 |
轴常量:运动事件的通用轴 5。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_6 |
轴常量:运动事件的通用轴 6。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_7 |
轴常量:运动事件的通用轴 7。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_8 |
轴常量:运动事件的通用轴 8。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GENERIC_9 |
轴常量:运动事件的通用轴 9。 通用轴的解释取决于设备。 |
AMOTION_EVENT_AXIS_GESTURE_PINCH_SCALE_FACTOR |
轴常量:运动事件的捏合缩放因子。
这些值是相对于上次事件状态的相对值,不是累积值,因此开发人员应确保处理所有批量历史事件的此轴值。 此轴仅在运动事件的第一个指针上设置。 |
AMOTION_EVENT_AXIS_GESTURE_SCROLL_X_DISTANCE |
轴常量:运动事件的 X 滚动距离轴。
这些值是相对于上次事件状态的相对值,不是累积值,因此开发人员应确保处理所有批量历史事件的此轴值。 此轴仅在运动事件的第一个指针上设置。 |
AMOTION_EVENT_AXIS_GESTURE_SCROLL_Y_DISTANCE |
轴常量:运动事件的 Y 滚动距离轴。 与 AMOTION_EVENT_AXIS_GESTURE_SCROLL_X_DISTANCE 相同,但适用于 Y 轴。 |
AMOTION_EVENT_AXIS_GESTURE_SWIPE_FINGER_COUNT |
轴常量:多指滑动手势中使用的手指数量。
由于 CLASSIFICATION_MULTI_FINGER_SWIPE 是一个隐藏 API,因此此轴也是。它仅在运动事件的第一个指针上设置。 |
AMOTION_EVENT_AXIS_GESTURE_X_OFFSET |
轴常量:运动事件的 X 手势偏移轴。
这些值是相对于上次事件状态的相对值,不是累积值,因此开发人员应确保处理所有批量历史事件的此轴值。 此轴仅在运动事件的第一个指针上设置。 |
AMOTION_EVENT_AXIS_GESTURE_Y_OFFSET |
轴常量:运动事件的 Y 手势偏移轴。 与 AMOTION_EVENT_AXIS_GESTURE_X_OFFSET 相同,但适用于 Y 轴。 |
AMOTION_EVENT_AXIS_HAT_X |
轴常量:运动事件的方向帽 X 轴。
|
AMOTION_EVENT_AXIS_HAT_Y |
轴常量:运动事件的方向帽 Y 轴。
|
AMOTION_EVENT_AXIS_HSCROLL |
轴常量:运动事件的水平滚动轴。
此轴应用于水平滚动视图。 |
AMOTION_EVENT_AXIS_LTRIGGER |
轴常量:运动事件的左扳机轴。
|
AMOTION_EVENT_AXIS_ORIENTATION |
轴常量:运动事件的方向轴。
|
AMOTION_EVENT_AXIS_PRESSURE |
轴常量:运动事件的压力轴。
|
AMOTION_EVENT_AXIS_RELATIVE_X |
轴常量:运动事件的 x 位置移动。
|
AMOTION_EVENT_AXIS_RELATIVE_Y |
轴常量:运动事件的 y 位置移动。 与 AMOTION_EVENT_AXIS_RELATIVE_X 相同,但适用于 y 位置。 |
AMOTION_EVENT_AXIS_RTRIGGER |
轴常量:运动事件的右扳机轴。
|
AMOTION_EVENT_AXIS_RUDDER |
轴常量:运动事件的舵轴。
|
AMOTION_EVENT_AXIS_RX |
轴常量:运动事件的 X 旋转轴。
|
AMOTION_EVENT_AXIS_RY |
轴常量:运动事件的 Y 旋转轴。
|
AMOTION_EVENT_AXIS_RZ |
轴常量:运动事件的 Z 旋转轴。
|
AMOTION_EVENT_AXIS_SCROLL |
轴常量:运动事件的通用滚动轴。
|
AMOTION_EVENT_AXIS_SIZE |
轴常量:运动事件的大小轴。
|
AMOTION_EVENT_AXIS_THROTTLE |
轴常量:运动事件的油门轴。
|
AMOTION_EVENT_AXIS_TILT |
轴常量:运动事件的倾斜轴。
|
AMOTION_EVENT_AXIS_TOOL_MAJOR |
轴常量:运动事件的工具长轴。
当触摸是圆形时,长轴和短轴长度将相等。 工具尺寸可能大于触摸尺寸,因为工具可能未完全接触触摸传感器。 |
AMOTION_EVENT_AXIS_TOOL_MINOR |
轴常量:运动事件的工具短轴。
当触摸是圆形时,长轴和短轴长度将相等。 工具尺寸可能大于触摸尺寸,因为工具可能未完全接触触摸传感器。 |
AMOTION_EVENT_AXIS_TOUCH_MAJOR |
轴常量:运动事件的触摸长轴。
|
AMOTION_EVENT_AXIS_TOUCH_MINOR |
轴常量:运动事件的触摸短轴。
当触摸是圆形时,长轴和短轴长度将相等。 |
AMOTION_EVENT_AXIS_VSCROLL |
轴常量:运动事件的垂直滚动轴。
此轴应用于垂直滚动视图。 |
AMOTION_EVENT_AXIS_WHEEL |
轴常量:运动事件的滚轮轴。
|
AMOTION_EVENT_AXIS_X |
轴常量:运动事件的 X 轴。
|
AMOTION_EVENT_AXIS_Y |
轴常量:运动事件的 Y 轴。
|
AMOTION_EVENT_AXIS_Z |
轴常量:运动事件的 Z 轴。
|
AMOTION_EVENT_MAXIMUM_VALID_AXIS_VALUE |
注意:这不是一个“轴常量”。 它不代表任何轴,也不应被用于代表任何轴。它是一个常量,保存最大已定义轴值,以便使某些计算(例如遍历所有可能的轴)更清晰。如果您添加新的轴,请相应地更新此值。 |
匿名枚举 41
在android/input.h
中声明
Anonymous Enum 41
标识与运动事件关联的按钮的常量。
有关每个按钮的说明,请参阅 MotionEvent 类的文档。
匿名枚举 42
在android/input.h
中声明
Anonymous Enum 42
标识工具类型的常量。
有关每种工具类型的说明,请参阅 MotionEvent 类的文档。
匿名枚举 43
在android/input.h
中声明
Anonymous Enum 43
输入源掩码。
有关输入源及其正确解释的更多详细信息,请参阅 android.view.InputDevice 的文档。
匿名枚举 44
在android/input.h
中声明
Anonymous Enum 44
输入源。
匿名枚举 45
在android/input.h
中声明
Anonymous Enum 45
键盘类型。
有关更多详细信息,请参阅 android.view.InputDevice 的文档。
属性 | |
---|---|
AINPUT_KEYBOARD_TYPE_ALPHABETIC |
字母 |
AINPUT_KEYBOARD_TYPE_NONE |
无 |
AINPUT_KEYBOARD_TYPE_NON_ALPHABETIC |
非字母 |
匿名枚举 46
在android/input.h
中声明
Anonymous Enum 46
用于检索运动事件特定坐标运动范围信息的常量。
有关输入源及其正确解释的更多详细信息,请参阅 android.view.InputDevice 的文档。
匿名枚举 47
在android/keycodes.h
中声明
Anonymous Enum 47
键码。
AMotionClassification
在android/input.h
中声明
AMotionClassification
标识不同手势分类类型的常量。
属性 | |
---|---|
AMOTION_EVENT_CLASSIFICATION_AMBIGUOUS_GESTURE |
分类常量:模糊手势。 当前事件流的用户意图尚未确定。以 AMOTION_EVENT_CLASSIFICATION_AMBIGUOUS_GESTURE 开头的事件最终将解析为 AMOTION_EVENT_CLASSIFICATION_DEEP_PRESS 或 AMOTION_EVENT_CLASSIFICATION_NONE。应阻止手势操作(例如滚动),直到分类解析为另一个值或事件流结束。 |
AMOTION_EVENT_CLASSIFICATION_DEEP_PRESS |
分类常量:深按。 当前事件流表示用户有意更用力地按下屏幕。此分类类型应用于加速长按行为。 |
AMOTION_EVENT_CLASSIFICATION_MULTI_FINGER_SWIPE |
分类常量:多指滑动。 当前事件流表示用户在触控板上用三个或更多手指滑动。与双指滑动不同,这些操作仅由系统 UI 处理,因此它们与双指滑动有单独的常量。 |
AMOTION_EVENT_CLASSIFICATION_NONE |
分类常量:无。 没有关于当前运动事件流的其他信息。 |
AMOTION_EVENT_CLASSIFICATION_PINCH |
分类常量:捏合。 手势以当前光标位置为中心。 |
AMOTION_EVENT_CLASSIFICATION_TWO_FINGER_SWIPE |
分类常量:触控板双指滑动。 当前事件流表示用户在触控板上用两指滑动。 |
类型定义
AInputEvent
在android/input.h
中声明
struct AInputEvent AInputEvent
输入事件。
输入事件是不透明结构。使用提供的访问器函数读取它们的属性。
函数
AInputEvent_getDeviceId
在android/input.h
中声明
int32_t AInputEvent_getDeviceId( const AInputEvent *event )
获取输入事件来源设备的 ID。
输入事件可以由多个不同的输入设备生成。使用输入设备 ID 获取负责生成特定事件的输入设备的信息。
输入设备 ID 为 0 表示事件不是来自物理设备;其他数字是任意的,您不应该依赖这些值。使用提供的输入设备查询 API 获取有关输入设备的信息。
AInputEvent_getSource
在android/input.h
中声明
int32_t AInputEvent_getSource( const AInputEvent *event )
获取输入事件源。
AInputEvent_getType
在android/input.h
中声明
int32_t AInputEvent_getType( const AInputEvent *event )
输入事件访问器。
请注意,大多数函数只能用于给定类型的输入事件。对其他类型的输入事件调用这些函数将导致未定义的行为。获取输入事件类型。
AInputEvent_release
在android/input.h
中声明
void AInputEvent_release( const AInputEvent *event )
释放由 AKeyEvent_fromJava() 和 AMotionEvent_fromJava() 创建的接口对象。
返回后,指定的 AInputEvent* 对象将失效,不应再使用。底层 Java 对象仍然有效,并且不会改变其状态。
自 API 级别 31 起可用。
AInputEvent_toJava
在android/input.h
中声明
jobject AInputEvent_toJava( JNIEnv *env, const AInputEvent *aInputEvent )
创建指定原生 AInputEvent 的 Java android.view.InputEvent 对象副本。
指定的 AInputEvent 必须是有效的 MotionEvent 或 KeyEvent 对象。
自 API 级别 35 起可用。
AInputQueue_attachLooper
在android/input.h
中声明
void AInputQueue_attachLooper( AInputQueue *queue, ALooper *looper, int ident, ALooper_callbackFunc callback, void *data )
将此输入队列添加到 Looper 进行处理。
有关 ident、callback 和 data 参数的信息,请参阅 ALooper_addFd()。
AInputQueue_detachLooper
在android/input.h
中声明
void AInputQueue_detachLooper( AInputQueue *queue )
将输入队列从当前附加到的 Looper 中移除。
AInputQueue_finishEvent
在android/input.h
中声明
void AInputQueue_finishEvent( AInputQueue *queue, AInputEvent *event, int handled )
报告已完成给定事件的分发。
在使用 AInputQueue_getEvent() 接收事件后,必须调用此函数。
AInputQueue_fromJava
在android/input.h
中声明
AInputQueue * AInputQueue_fromJava( JNIEnv *env, jobject inputQueue )
返回与提供的 Java InputQueue 对象关联的 AInputQueue* 对象。
返回的 native 对象持有对 Java 对象的弱引用,并且仅在 Java 对象尚未被释放的情况下有效。在使用返回的对象之前,应确保存在对 Java 对象的强引用且该对象尚未被释放。
自 API 级别 33 起可用。
AInputQueue_getEvent
在android/input.h
中声明
int32_t AInputQueue_getEvent( AInputQueue *queue, AInputEvent **outEvent )
返回队列中下一个可用的事件。
如果没有可用事件或发生错误,则返回负值。
AInputQueue_hasEvents
在android/input.h
中声明
int32_t AInputQueue_hasEvents( AInputQueue *queue )
如果输入队列中有一个或多个可用事件,则返回 true。
如果队列中有事件,则返回 1;如果没有事件,则返回 0;如果发生错误,则返回负值。
AInputQueue_preDispatchEvent
在android/input.h
中声明
int32_t AInputQueue_preDispatchEvent( AInputQueue *queue, AInputEvent *event )
发送用于标准预分发的键,也就是说,可能先将其发送给当前 IME 并在应用之前使用。
如果未预分发,则返回 0,这意味着您可以立即处理它。如果返回非零值,则必须放弃当前的事件处理,并允许该事件再次出现在事件队列中(如果在预分发期间未被消耗)。
AKeyEvent_fromJava
在android/input.h
中声明
const AInputEvent * AKeyEvent_fromJava( JNIEnv *env, jobject keyEvent )
创建指定 Java android.view.KeyEvent 的原生 AInputEvent* 对象副本。
结果可与通用和 KeyEvent 特定的 AInputEvent_* 函数一起使用。此函数返回的对象必须使用 AInputEvent_release() 释放。
自 API 级别 31 起可用。
AKeyEvent_getAction
在android/input.h
中声明
int32_t AKeyEvent_getAction( const AInputEvent *key_event )
获取按键事件操作。
AKeyEvent_getDownTime
在android/input.h
中声明
int64_t AKeyEvent_getDownTime( const AInputEvent *key_event )
获取最近按键按下事件发生的时间,时间基准为 java.lang.System.nanoTime()。
如果这是一个按下事件,则此值将与 eventTime 相同。请注意,在和弦按键时,此值是最近按下的键的按下时间,可能与此事件的物理键不同。
AKeyEvent_getEventTime
在android/input.h
中声明
int64_t AKeyEvent_getEventTime( const AInputEvent *key_event )
获取此事件发生的时间,时间基准为 java.lang.System.nanoTime()。
AKeyEvent_getFlags
在android/input.h
中声明
int32_t AKeyEvent_getFlags( const AInputEvent *key_event )
获取按键事件标志。
AKeyEvent_getKeyCode
在android/input.h
中声明
int32_t AKeyEvent_getKeyCode( const AInputEvent *key_event )
获取按键事件的键码。
这是按下的物理键,而不是 Unicode 字符。
AKeyEvent_getMetaState
在android/input.h
中声明
int32_t AKeyEvent_getMetaState( const AInputEvent *key_event )
获取 meta 键状态。
AKeyEvent_getRepeatCount
在android/input.h
中声明
int32_t AKeyEvent_getRepeatCount( const AInputEvent *key_event )
获取事件的重复次数。
对于按键抬起和按键按下事件,这是按键重复的次数,第一次按下计数从 0 开始并向上计数。对于多个按键事件,这是发生过的按下/抬起对数。
AKeyEvent_getScanCode
在android/input.h
中声明
int32_t AKeyEvent_getScanCode( const AInputEvent *key_event )
获取此按键事件的硬件键 ID。
这些值不可靠,因设备而异。
AMotionEvent_fromJava
在android/input.h
中声明
const AInputEvent * AMotionEvent_fromJava( JNIEnv *env, jobject motionEvent )
创建指定 Java android.view.MotionEvent 的原生 AInputEvent* 对象副本。
结果可与通用和 MotionEvent 特定的 AInputEvent_* 函数一起使用。此函数返回的对象必须使用 AInputEvent_release() 释放。
自 API 级别 31 起可用。
AMotionEvent_getAction
在android/input.h
中声明
int32_t AMotionEvent_getAction( const AInputEvent *motion_event )
获取运动事件操作码和指针索引的组合。
AMotionEvent_getActionButton
在android/input.h
中声明
int32_t AMotionEvent_getActionButton( const AInputEvent *motion_event )
获取运动事件的操作按钮。
当事件与按钮按下或按钮释放动作相关联时,返回有效的动作按钮。对于其他动作,返回值未定义。
另请参阅:AMOTION_EVENT_BUTTON_PRIMARY另请参阅:AMOTION_EVENT_BUTTON_SECONDARY另请参阅:AMOTION_EVENT_BUTTON_TERTIARY另请参阅:AMOTION_EVENT_BUTTON_BACK另请参阅:AMOTION_EVENT_BUTTON_FORWARD另请参阅:#AMOTION_EVENT_BUTTON_STYLUS_PRIMARY 另请参阅:#AMOTION_EVENT_BUTTON_STYLUS_SECONDARY
AMotionEvent_getAxisValue
在android/input.h
中声明
float AMotionEvent_getAxisValue( const AInputEvent *motion_event, int32_t axis, size_t pointer_index )
获取给定指针索引的请求轴的值。
AMotionEvent_getButtonState
在android/input.h
中声明
int32_t AMotionEvent_getButtonState( const AInputEvent *motion_event )
获取所有被按下按钮的按钮状态。
AMotionEvent_getClassification
在android/input.h
中声明
int32_t AMotionEvent_getClassification( const AInputEvent *motion_event )
返回当前手势的分类。
随着同一手势的更多事件可用,分类可能会发生变化。
另请参阅: AMOTION_EVENT_CLASSIFICATION_NONE 另请参阅: AMOTION_EVENT_CLASSIFICATION_AMBIGUOUS_GESTURE 另请参阅: AMOTION_EVENT_CLASSIFICATION_DEEP_PRESS
AMotionEvent_getDownTime
在android/input.h
中声明
int64_t AMotionEvent_getDownTime( const AInputEvent *motion_event )
获取用户最初按下以开始一系列位置事件的时间,时间基准为 java.lang.System.nanoTime()。
AMotionEvent_getEdgeFlags
在android/input.h
中声明
int32_t AMotionEvent_getEdgeFlags( const AInputEvent *motion_event )
获取一个位字段,指示此运动事件触及了哪些边缘(如果有)。
对于触摸事件,客户端可以使用此信息确定用户的触控手指是否接触到显示屏边缘。
AMotionEvent_getEventTime
在android/input.h
中声明
int64_t AMotionEvent_getEventTime( const AInputEvent *motion_event )
获取生成此特定事件的时间,时间基准为 java.lang.System.nanoTime()。
AMotionEvent_getFlags
在android/input.h
中声明
int32_t AMotionEvent_getFlags( const AInputEvent *motion_event )
获取运动事件标志。
AMotionEvent_getHistoricalAxisValue
在android/input.h
中声明
float AMotionEvent_getHistoricalAxisValue( const AInputEvent *motion_event, int32_t axis, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的请求轴的历史值。
AMotionEvent_getHistoricalEventTime
在android/input.h
中声明
int64_t AMotionEvent_getHistoricalEventTime( const AInputEvent *motion_event, size_t history_index )
获取此事件与上一个事件之间发生历史运动的时间,时间基准为 java.lang.System.nanoTime()。
AMotionEvent_getHistoricalOrientation
在android/input.h
中声明
float AMotionEvent_getHistoricalOrientation( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的触控区域和工具区域的历史方向(以弧度为单位,从垂直方向顺时针计算)。
0 度角表示接触主轴向上、完美圆形或方向未知。正角表示接触主轴向右。负角表示接触主轴向左。完整范围是从 -PI/2 弧度(手指完全指向左侧)到 PI/2 弧度(手指完全指向右侧)。
AMotionEvent_getHistoricalPressure
在android/input.h
中声明
float AMotionEvent_getHistoricalPressure( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史压力。
压力通常范围从 0(完全没有压力)到 1(正常压力),但根据输入设备的校准可能会生成大于 1 的值。
AMotionEvent_getHistoricalRawX
在android/input.h
中声明
float AMotionEvent_getHistoricalRawX( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史原始 X 坐标。
对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,未调整为包含窗口和视图。整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getHistoricalRawY
在android/input.h
中声明
float AMotionEvent_getHistoricalRawY( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史原始 Y 坐标。
对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,未调整为包含窗口和视图。整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getHistoricalSize
在android/input.h
中声明
float AMotionEvent_getHistoricalSize( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的近似尺寸的当前缩放值。
这表示被按压屏幕区域的大约大小;与触摸对应的实际像素值通过设备特定的值范围进行归一化,并缩放为介于 0 到 1 之间的值。大小的值可用于确定胖触摸事件。
AMotionEvent_getHistoricalToolMajor
在android/input.h
中声明
float AMotionEvent_getHistoricalToolMajor( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、描述给定指针索引接近工具尺寸的椭圆长轴的历史长度。
工具区域表示接触设备的手指或笔的估计大小,与其在接触点的实际触摸区域无关。
AMotionEvent_getHistoricalToolMinor
在android/input.h
中声明
float AMotionEvent_getHistoricalToolMinor( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、描述给定指针索引接近工具尺寸的椭圆短轴的历史长度。
工具区域表示接触设备的手指或笔的估计大小,与其在接触点的实际触摸区域无关。
AMotionEvent_getHistoricalTouchMajor
在android/input.h
中声明
float AMotionEvent_getHistoricalTouchMajor( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、描述给定指针索引接触点触控区域的椭圆长轴的历史长度。
AMotionEvent_getHistoricalTouchMinor
在android/input.h
中声明
float AMotionEvent_getHistoricalTouchMinor( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、描述给定指针索引接触点触控区域的椭圆短轴的历史长度。
AMotionEvent_getHistoricalX
在android/input.h
中声明
float AMotionEvent_getHistoricalX( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史 X 坐标。
整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getHistoricalY
在android/input.h
中声明
float AMotionEvent_getHistoricalY( const AInputEvent *motion_event, size_t pointer_index, size_t history_index )
获取此事件与上一个运动事件之间发生的、给定指针索引的此事件的历史 Y 坐标。
整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getHistorySize
在android/input.h
中声明
size_t AMotionEvent_getHistorySize( const AInputEvent *motion_event )
获取此事件中的历史点数量。
这些是此事件与上一个事件之间发生的移动。这仅适用于 AMOTION_EVENT_ACTION_MOVE 事件,所有其他动作的大小将为 0。历史样本按从旧到新的顺序索引。
AMotionEvent_getMetaState
在android/input.h
中声明
int32_t AMotionEvent_getMetaState( const AInputEvent *motion_event )
获取生成事件时生效的所有 meta/修饰键的状态。
AMotionEvent_getOrientation
在android/input.h
中声明
float AMotionEvent_getOrientation( const AInputEvent *motion_event, size_t pointer_index )
获取给定指针索引的触控区域和工具区域的当前方向(以弧度为单位,从垂直方向顺时针计算)。
0 度角表示接触主轴向上、完美圆形或方向未知。正角表示接触主轴向右。负角表示接触主轴向左。完整范围是从 -PI/2 弧度(手指完全指向左侧)到 PI/2 弧度(手指完全指向右侧)。
AMotionEvent_getPointerCount
在android/input.h
中声明
size_t AMotionEvent_getPointerCount( const AInputEvent *motion_event )
获取此事件中包含的数据指针数量。
始终 >= 1。
AMotionEvent_getPointerId
在android/input.h
中声明
int32_t AMotionEvent_getPointerId( const AInputEvent *motion_event, size_t pointer_index )
获取与此事件中特定指针数据索引关联的指针标识符。
该标识符告诉您与数据关联的实际指针编号,考虑了自当前手势开始以来单个指针的抬起和放下。
AMotionEvent_getPressure
在android/input.h
中声明
float AMotionEvent_getPressure( const AInputEvent *motion_event, size_t pointer_index )
获取此事件对于给定指针索引的当前压力。
压力通常范围从 0(完全没有压力)到 1(正常压力),但根据输入设备的校准可能会生成大于 1 的值。
AMotionEvent_getRawX
在android/input.h
中声明
float AMotionEvent_getRawX( const AInputEvent *motion_event, size_t pointer_index )
获取此事件的原始原始 X 坐标。
对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,未调整为包含窗口和视图。
AMotionEvent_getRawY
在android/input.h
中声明
float AMotionEvent_getRawY( const AInputEvent *motion_event, size_t pointer_index )
获取此事件的原始原始 X 坐标。
对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,未调整为包含窗口和视图。
AMotionEvent_getSize
在android/input.h
中声明
float AMotionEvent_getSize( const AInputEvent *motion_event, size_t pointer_index )
获取给定指针索引的近似尺寸的当前缩放值。
这表示被按压屏幕区域的大约大小;与触摸对应的实际像素值通过设备特定的值范围进行归一化,并缩放为介于 0 到 1 之间的值。大小的值可用于确定胖触摸事件。
AMotionEvent_getToolMajor
在android/input.h
中声明
float AMotionEvent_getToolMajor( const AInputEvent *motion_event, size_t pointer_index )
获取描述给定指针索引接近工具尺寸的椭圆长轴的当前长度。
工具区域表示接触设备的手指或笔的估计大小,与其在接触点的实际触摸区域无关。
AMotionEvent_getToolMinor
在android/input.h
中声明
float AMotionEvent_getToolMinor( const AInputEvent *motion_event, size_t pointer_index )
获取描述给定指针索引接近工具尺寸的椭圆短轴的当前长度。
工具区域表示接触设备的手指或笔的估计大小,与其在接触点的实际触摸区域无关。
AMotionEvent_getToolType
在android/input.h
中声明
int32_t AMotionEvent_getToolType( const AInputEvent *motion_event, size_t pointer_index )
获取给定指针索引的指针工具类型。
工具类型指示用于接触的工具类型,例如手指或手写笔(如果已知)。
AMotionEvent_getTouchMajor
在android/input.h
中声明
float AMotionEvent_getTouchMajor( const AInputEvent *motion_event, size_t pointer_index )
获取描述给定指针索引接触点触控区域的椭圆长轴的当前长度。
AMotionEvent_getTouchMinor
在android/input.h
中声明
float AMotionEvent_getTouchMinor( const AInputEvent *motion_event, size_t pointer_index )
获取描述给定指针索引接触点触控区域的椭圆短轴的当前长度。
AMotionEvent_getX
在android/input.h
中声明
float AMotionEvent_getX( const AInputEvent *motion_event, size_t pointer_index )
获取此事件对于给定指针索引的当前 X 坐标。
整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getXOffset
在android/input.h
中声明
float AMotionEvent_getXOffset( const AInputEvent *motion_event )
获取 X 坐标偏移量。
对于屏幕上的触摸事件,这是添加到原始屏幕坐标中的增量,用于调整包含窗口和视图的绝对位置。
AMotionEvent_getXPrecision
在android/input.h
中声明
float AMotionEvent_getXPrecision( const AInputEvent *motion_event )
获取报告的 X 坐标精度。
您可以将此数字与 X 坐标样本相乘,以找到 X 坐标的实际硬件值。
AMotionEvent_getY
在android/input.h
中声明
float AMotionEvent_getY( const AInputEvent *motion_event, size_t pointer_index )
获取此事件对于给定指针索引的当前 Y 坐标。
整数是像素;对于亚像素精度的输入设备,该值可能包含小数部分。
AMotionEvent_getYOffset
在android/input.h
中声明
float AMotionEvent_getYOffset( const AInputEvent *motion_event )
获取 Y 坐标偏移量。
对于屏幕上的触摸事件,这是添加到原始屏幕坐标中的增量,用于调整包含窗口和视图的绝对位置。
AMotionEvent_getYPrecision
在android/input.h
中声明
float AMotionEvent_getYPrecision( const AInputEvent *motion_event )
获取报告的 Y 坐标精度。
您可以将此数字与 Y 坐标样本相乘,以找到 Y 坐标的实际硬件值。