Most visited

Recently visited

Added in API level 1

MotionEvent

public final class MotionEvent
extends InputEvent implements Parcelable

java.lang.Object
   ↳ android.view.InputEvent
     ↳ android.view.MotionEvent


用于报告移动的对象(鼠标,笔,手指,轨迹球)事件。 运动事件可以保持绝对或相对运动和其他数据,这取决于设备的类型。

概述

运动事件根据动作代码和一组轴值来描述运动。 动作代码指定发生的状态变化,例如指针向下或向上。 轴值描述位置和其他运动属性。

例如,当用户第一次触摸屏幕时,系统通过动作代码 ACTION_DOWN和一组包含触摸的X和Y坐标的轴值以及有关压力,大小和尺寸的信息向适当的 View传递触摸事件接触区域的方向。

一些设备可以同时报告多个移动轨迹。 多点触摸屏为每个手指发出一个运动轨迹。 产生移动轨迹的各个手指或其他物体被称为指针 动作事件包含有关所有当前活动的指针的信息,即使其中一些指针自上次事件发送以来尚未移动。

除非手势被取消,否则随着单个指针上下移动,指针的数量只会改变一次。

每个指针都有一个唯一的ID,它在第一次关闭时分配(由ACTION_DOWNACTION_POINTER_DOWN表示)。 指针ID保持有效,直到指针最终上升(由ACTION_UPACTION_POINTER_UP指示)或取消手势(由ACTION_CANCEL指示)。

所述MotionEvent类提供许多方法来查询位置和指针的其他性质,例如getX(int)getY(int)getAxisValue(int)getPointerId(int)getToolType(int) ,和许多其他。 大多数这些方法接受指针索引作为参数而不是指针ID。 事件中每个指针的指针索引范围从0到1,小于getPointerCount()返回的值。

单个指针在运动事件中出现的顺序未定义。 因此,指针的指针索引可以从一个事件改变到下一个事件,但只要指针保持活动状态,指针的指针ID就保证保持不变。 使用getPointerId(int)方法获取指针的指针ID,以在手势中的所有后续动作事件中跟踪指针。 然后,对于连续的运动事件,请使用findPointerIndex(int)方法获取该运动事件中给定指针标识的指针索引。

鼠标和手写笔按钮可以使用getButtonState()进行检索。 在处理ACTION_DOWN作为触摸事件的一部分时检查按钮状态是一个好主意。 如果触摸事件由于次按钮单击而启动,例如呈现上下文菜单,则应用程序可以选择执行一些不同的动作。

Batching

为了提高效率,使用ACTION_MOVE运动事件可以将单个对象内的多个运动样本进行批处理。 最新的指针坐标可以使用getX(int)getY(int) 使用getHistoricalX(int, int)getHistoricalY(int, int)访问批次内的较早坐标。 坐标是“历史的”,只是因为它们比批处理中的当前坐标更早; 然而,它们仍然不同于之前动作事件中报告的任何其他坐标。 要按时间顺序处理批次中的所有坐标,请先消耗历史坐标,然后消耗当前坐标。

示例:按时间顺序消耗运动事件中所有指针的所有采样。


 void printSamples(MotionEvent ev) {
     final int historySize = ev.getHistorySize();
     final int pointerCount = ev.getPointerCount();
     for (int h = 0; h < historySize; h++) {
         System.out.printf("At time %d:", ev.getHistoricalEventTime(h));
         for (int p = 0; p < pointerCount; p++) {
             System.out.printf("  pointer %d: (%f,%f)",
                 ev.getPointerId(p), ev.getHistoricalX(p, h), ev.getHistoricalY(p, h));
         }
     }
     System.out.printf("At time %d:", ev.getEventTime());
     for (int p = 0; p < pointerCount; p++) {
         System.out.printf("  pointer %d: (%f,%f)",
             ev.getPointerId(p), ev.getX(p), ev.getY(p));
     }
 }
 

Device Types

MotionEvent内容的解释根据设备的源类而有很大不同。

在触摸屏等源类为SOURCE_CLASS_POINTER指点设备上,指针坐标指定绝对位置,如视图X / Y坐标。 每个完整的手势由一系列动作事件表示,其中动作描述指针状态转换和移动。 一个手势以ACTION_DOWN的运动事件开始,提供第一个指针的位置。 随着每个额外的指针向下或向上,框架将相应地生成一个包含ACTION_POINTER_DOWNACTION_POINTER_UP的运动事件。 指针运动由ACTION_MOVE的运动事件描述。 最后,手势可以在最终指针上升时结束,如ACTION_UP的运动事件表示的ACTION_UP或者手势被ACTION_CANCEL取消。

某些指点设备(如鼠标)可支持垂直和/或水平滚动。 滚动事件被报告为ACTION_SCROLL的通用运动事件,其中包括AXIS_VSCROLLAXIS_HSCROLL轴中的相对滚动偏移量。 有关检索这些附加轴的信息,请参见getAxisValue(int)

在源类为SOURCE_CLASS_TRACKBALL轨迹球设备上,指针坐标将相对运动指定为X / Y增量。 轨迹球手势包括由运动事件描述的一系列运动,其中运动事件ACTION_MOVE偶尔分布有ACTION_DOWNACTION_UP运动事件,当轨迹球按钮被按下或释放时。

在源类为SOURCE_CLASS_JOYSTICK游戏杆设备上,指针坐标指定操纵杆轴的绝对位置。 操纵杆轴值被归一化到-1.0至1.0的范围,其中0.0对应于中心位置。 有关可用轴组和运动范围的更多信息可以使用getMotionRange(int)获得。 一些常见的摇杆轴是AXIS_XAXIS_YAXIS_HAT_XAXIS_HAT_YAXIS_ZAXIS_RZ

有关不同类型的输入设备和来源如何表示指针坐标的更多信息,请参阅 InputDevice

Consistency Guarantees

运动事件始终作为一致的事件流传递给视图。 什么构成一致的流取决于设备的类型。 对于触摸事件来说,一致性意味着指针一次一个地下移,作为一组移动,然后一次一个或取消。

虽然框架试图向视图提供一致的运动事件流,但它不能保证它。 某些事件可能会在传递之前通过在应用程序中包含视图来删除或修改,从而导致事件流不一致。 视图应始终准备好处理ACTION_CANCEL并且应该能够容忍异常情况,例如接收新的ACTION_DOWN而不是先收到先前手势的ACTION_UP

Summary

Nested classes

class MotionEvent.PointerCoords

传递对象的指针坐标。

class MotionEvent.PointerProperties

传递指针属性的对象。

Constants

int ACTION_BUTTON_PRESS

常量为 getActionMasked() :按钮已被按下。

int ACTION_BUTTON_RELEASE

常量 getActionMasked() :按钮已释放。

int ACTION_CANCEL

常量 getActionMasked() :当前手势已中止。

int ACTION_DOWN

常量 getActionMasked() :按下的手势已开始,动作包含初始起始位置。

int ACTION_HOVER_ENTER

常量为 getActionMasked() :指针未关闭,但已进入窗口或视图的边界。

int ACTION_HOVER_EXIT

常量为 getActionMasked() :指针未关闭,但已退出窗口或视图的边界。

int ACTION_HOVER_MOVE

常量为 getActionMasked() :发生更改,但指针未关闭(不像 ACTION_MOVE )。

int ACTION_MASK

作为动作本身的动作代码部分的位掩码。

int ACTION_MOVE

常量 getActionMasked() :在按下手势( ACTION_DOWNACTION_UP之间)期间发生了变化。

int ACTION_OUTSIDE

常量为 getActionMasked() :移动发生在UI元素的正常界限之外。

int ACTION_POINTER_1_DOWN

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_DOWN相关联的数据索引。

int ACTION_POINTER_1_UP

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_UP相关联的数据索引。

int ACTION_POINTER_2_DOWN

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_DOWN相关联的数据索引。

int ACTION_POINTER_2_UP

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_UP相关联的数据索引。

int ACTION_POINTER_3_DOWN

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_DOWN关联的数据索引。

int ACTION_POINTER_3_UP

此常数在API级别8中已弃用。使用ACTION_POINTER_INDEX_MASK可检索与ACTION_POINTER_UP关联的数据索引。

int ACTION_POINTER_DOWN

常量为 getActionMasked() :非主指针已关闭。

int ACTION_POINTER_ID_MASK

此常数在API级别8中已弃用。重命名为ACTION_POINTER_INDEX_MASK以匹配这些位中包含的实际数据。

int ACTION_POINTER_ID_SHIFT

此常数在API级别8中已弃用。重命名为ACTION_POINTER_INDEX_SHIFT以匹配这些位中包含的实际数据。

int ACTION_POINTER_INDEX_MASK

动作代码中的位代表指针索引,与 ACTION_POINTER_DOWNACTION_POINTER_UP

int ACTION_POINTER_INDEX_SHIFT

按照 ACTION_POINTER_INDEX_MASK定义的保存指针索引的动作位的 ACTION_POINTER_INDEX_MASK

int ACTION_POINTER_UP

常量为 getActionMasked() :非主指针已上升。

int ACTION_SCROLL

常量为 getActionMasked() :运动事件包含相对垂直和/或水平滚动偏移。

int ACTION_UP

常量 getActionMasked() :按下的手势已完成,该动作包含最后释放位置以及自上次下移或移动事件以来的任何中间点。

int AXIS_BRAKE

轴常数:运动事件的制动轴。

int AXIS_DISTANCE

轴常数:运动事件的距离轴。

int AXIS_GAS

轴常数:运动事件的气体轴。

int AXIS_GENERIC_1

轴常数:运动事件的通用1轴。

int AXIS_GENERIC_10

轴常数:运动事件的通用10轴。

int AXIS_GENERIC_11

轴常数:运动事件的通用11轴。

int AXIS_GENERIC_12

轴常数:运动事件的通用12轴。

int AXIS_GENERIC_13

轴常数:运动事件的通用13轴。

int AXIS_GENERIC_14

轴常数:运动事件的通用14轴。

int AXIS_GENERIC_15

轴常数:运动事件的通用15轴。

int AXIS_GENERIC_16

轴常数:运动事件的通用16轴。

int AXIS_GENERIC_2

轴常数:运动事件的通用2轴。

int AXIS_GENERIC_3

轴常数:运动事件的通用3轴。

int AXIS_GENERIC_4

轴常数:运动事件的通用4轴。

int AXIS_GENERIC_5

轴常数:运动事件的通用5轴。

int AXIS_GENERIC_6

轴常数:运动事件的通用6轴。

int AXIS_GENERIC_7

轴常数:运动事件的通用7轴。

int AXIS_GENERIC_8

轴常数:运动事件的通用8轴。

int AXIS_GENERIC_9

轴常数:运动事件的通用9轴。

int AXIS_HAT_X

轴常数:运动事件的帽子X轴。

int AXIS_HAT_Y

轴常数:动作事件的帽子Y轴。

int AXIS_HSCROLL

轴常数:水平滚动运动事件的轴。

int AXIS_LTRIGGER

轴常数:左运动事件的触发轴。

int AXIS_ORIENTATION

轴常数:运动事件的方向轴。

int AXIS_PRESSURE

轴常数:运动事件的压力轴。

int AXIS_RELATIVE_X

轴常数:运动事件的x位置的运动。

int AXIS_RELATIVE_Y

轴常数:运动事件的y位置的运动。

int AXIS_RTRIGGER

轴常数:右运动事件的触发轴。

int AXIS_RUDDER

轴常数:运动事件的舵轴。

int AXIS_RX

轴常数:X运动事件的旋转轴。

int AXIS_RY

轴常数:Y运动事件的旋转轴。

int AXIS_RZ

轴常数:Z运动事件的旋转轴。

int AXIS_SIZE

轴常数:运动事件的大小轴。

int AXIS_THROTTLE

轴常数:动作事件的节流轴。

int AXIS_TILT

轴常数:运动事件的倾斜轴。

int AXIS_TOOL_MAJOR

轴常量:运动事件的ToolMajor轴。

int AXIS_TOOL_MINOR

轴常数:运动事件的ToolMinor轴。

int AXIS_TOUCH_MAJOR

轴常量:触摸运动事件的主轴。

int AXIS_TOUCH_MINOR

轴常数:动作事件的TouchMinor轴。

int AXIS_VSCROLL

轴常数:垂直移动事件的轴。

int AXIS_WHEEL

轴常数:运动事件的轮轴。

int AXIS_X

轴常数:运动事件的X轴。

int AXIS_Y

轴常数:运动事件的Y轴。

int AXIS_Z

轴常数:运动事件的Z轴。

int BUTTON_BACK

按钮常量:按下后退按钮(鼠标后退按钮)。

int BUTTON_FORWARD

按钮常量:按下前进按钮(鼠标前进按钮)。

int BUTTON_PRIMARY

按钮常量:主按钮(鼠标左键)。

int BUTTON_SECONDARY

按钮常量:辅助按钮(鼠标右键)。

int BUTTON_STYLUS_PRIMARY

按钮常量:主笔按钮被按下。

int BUTTON_STYLUS_SECONDARY

按钮常量:按下次手写笔按钮。

int BUTTON_TERTIARY

按钮常量:第三级按钮(鼠标中键)。

int EDGE_BOTTOM

指示运动事件的标志与屏幕的底部边缘相交。

int EDGE_LEFT

指示运动事件的标志与屏幕的左边缘相交。

int EDGE_RIGHT

指示运动事件的标志与屏幕的右边缘相交。

int EDGE_TOP

指示运动事件的标志与屏幕的上边缘相交。

int FLAG_WINDOW_IS_OBSCURED

该标志表示接收到该运动事件的窗口部分或全部被其上方的另一个可见窗口遮挡。

int INVALID_POINTER_ID

无效的指针ID。

int TOOL_TYPE_ERASER

工具类型常量:该工具是以倒立姿势使用的橡皮擦或手写笔。

int TOOL_TYPE_FINGER

工具类型常量:该工具是一个手指。

int TOOL_TYPE_MOUSE

工具类型常量:该工具是鼠标或触控板。

int TOOL_TYPE_STYLUS

工具类型常量:该工具是手写笔。

int TOOL_TYPE_UNKNOWN

工具类型常量:未知工具类型。

Inherited constants

From interface android.os.Parcelable

Fields

public static final Creator<MotionEvent> CREATOR

Inherited fields

From class android.view.InputEvent

Public methods

static String actionToString(int action)

如果未知,则返回表示指定的未屏蔽动作(如“ACTION_DOWN”,“ACTION_POINTER_DOWN(3)”)或等效数值常量(例如“35”)的符号名称的字符串。

final void addBatch(long eventTime, PointerCoords[] pointerCoords, int metaState)

为此次活动中的一批动作添加一个新动作。

final void addBatch(long eventTime, float x, float y, float pressure, float size, int metaState)

为此次活动中的一批动作添加一个新动作。

static int axisFromString(String symbolicName)

通过其符号名称(如“AXIS_X”)或等效数值常量(如“42”)获取轴。

static String axisToString(int axis)

如果未知,则返回表示指定轴的符号名称(如“AXIS_X”)或等效数字常量(如“42”)的字符串。

final int findPointerIndex(int pointerId)

给定一个指针标识符,找到它在事件中的数据索引。

final int getAction()

返回正在执行的操作。

final int getActionButton()

获取在按下或释放操作期间哪个按钮已被修改。

final int getActionIndex()

对于由 getActionMasked()返回的 ACTION_POINTER_DOWNACTION_POINTER_UP ,这将返回关联的指针索引。

final int getActionMasked()

返回正在执行的被屏蔽的操作,不带指针索引信息。

final float getAxisValue(int axis, int pointerIndex)

返回给定指针 索引的请求轴的值(使用 getPointerId(int)查找此索引的指针标识符)。

final float getAxisValue(int axis)

getAxisValue(int)为第一个指针索引(可能是一个任意的指针标识符)。

final int getButtonState()

获取按下的所有按钮的状态,例如鼠标或手写笔按钮。

final int getDeviceId()

获取此事件来自的设备的ID。

final long getDownTime()

返回用户最初按下时启动位置事件流的时间(以毫秒为单位)。

final int getEdgeFlags()

返回一个位域,指示此MotionEvent触摸哪条边(如果有)。

final long getEventTime()

检索此事件发生的时间,在 uptimeMillis()时基中。

final int getFlags()

获取运动事件标志。

final float getHistoricalAxisValue(int axis, int pointerIndex, int pos)

根据 getAxisValue(int, int) ,返回此事件与给定指针的上一个事件之间发生的请求轴的历史值。

final float getHistoricalAxisValue(int axis, int pos)

getHistoricalAxisValue(int, int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final long getHistoricalEventTime(int pos)

uptimeMillis()时基为基础,返回此事件与上一事件之间发生历史移动的时间。

final float getHistoricalOrientation(int pointerIndex, int pos)

按照 getOrientation(int) ,返回此事件与给定指针的上一个事件之间发生的历史方向坐标。

final float getHistoricalOrientation(int pos)

getHistoricalOrientation(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final void getHistoricalPointerCoords(int pointerIndex, int pos, MotionEvent.PointerCoords outPointerCoords)

使用历史指针坐标数据填充 MotionEvent.PointerCoords对象,根据 getPointerCoords(int, MotionEvent.PointerCoords) ,发生在该事件和给定指针的上一个事件之间。

final float getHistoricalPressure(int pointerIndex, int pos)

根据 getPressure(int) ,返回此事件与给定指针的上一个事件之间发生的历史压力坐标。

final float getHistoricalPressure(int pos)

getHistoricalPressure(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalSize(int pos)

getHistoricalSize(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalSize(int pointerIndex, int pos)

根据 getSize(int) ,返回此事件与给定指针的上一个事件之间发生的历史大小坐标。

final float getHistoricalToolMajor(int pos)

getHistoricalToolMajor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalToolMajor(int pointerIndex, int pos)

按照 getToolMajor(int) ,返回此事件与给定指针的上一个事件之间发生的历史工具长轴坐标。

final float getHistoricalToolMinor(int pos)

getHistoricalToolMinor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalToolMinor(int pointerIndex, int pos)

按照 getToolMinor(int) ,返回此事件与给定指针的上一个事件之间发生的历史工具短轴坐标。

final float getHistoricalTouchMajor(int pos)

getHistoricalTouchMajor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalTouchMajor(int pointerIndex, int pos)

按照 getTouchMajor(int) ,返回此事件与给定指针的上一个事件之间发生的历史触摸主轴坐标。

final float getHistoricalTouchMinor(int pointerIndex, int pos)

按照 getTouchMinor(int) ,返回在该事件与给定指针的上一个事件之间发生的历史触摸短轴坐标。

final float getHistoricalTouchMinor(int pos)

getHistoricalTouchMinor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalX(int pos)

getHistoricalX(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalX(int pointerIndex, int pos)

按照 getX(int) ,返回此事件与给定指针的上一个事件之间发生的历史X坐标。

final float getHistoricalY(int pos)

getHistoricalY(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getHistoricalY(int pointerIndex, int pos)

按照 getY(int) ,返回此事件与给定指针的上一个事件之间发生的历史Y坐标。

final int getHistorySize()

返回此事件中的历史点数。

final int getMetaState()

返回生成事件时有效的元/键的状态。

final float getOrientation()

getOrientation(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getOrientation(int pointerIndex)

对于给定的指针 索引,返回触摸区域和工具区域的垂直方向弧度的垂直方向(使用 getPointerId(int)查找此索引的指针标识符)。

final void getPointerCoords(int pointerIndex, MotionEvent.PointerCoords outPointerCoords)

使用指定指针索引的指针坐标数据填充 MotionEvent.PointerCoords对象。

final int getPointerCount()

包含在这个事件中的数据指针的数量。

final int getPointerId(int pointerIndex)

在此事件中返回与特定指针数据索引关联的指针标识符。

final void getPointerProperties(int pointerIndex, MotionEvent.PointerProperties outPointerProperties)

使用指定指针索引的指针属性填充 MotionEvent.PointerProperties对象。

final float getPressure(int pointerIndex)

返回给定指针 索引的此事件的当前压力(使用 getPointerId(int)查找此索引的指针标识符)。

final float getPressure()

getPressure(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getRawX()

返回此事件的原始X坐标。

final float getRawY()

返回此事件的原始Y坐标。

final float getSize(int pointerIndex)

返回给定指针 索引的近似大小的缩放值(使用 getPointerId(int)查找此索引的指针标识符)。

final float getSize()

getSize(int)为第一个指针索引(可能是一个任意的指针标识符)。

final int getSource()

获取事件的来源。

final float getToolMajor(int pointerIndex)

返回描述给定指针 索引的接近工具大小的椭圆的长轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

final float getToolMajor()

getToolMajor(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getToolMinor()

getToolMinor(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getToolMinor(int pointerIndex)

返回描述给定指针 索引的接近工具大小的椭圆的短轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

final int getToolType(int pointerIndex)

获取给定指针索引的指针的工具类型。

final float getTouchMajor()

getTouchMajor(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getTouchMajor(int pointerIndex)

返回描述给定指针 索引的接触点触摸区域的椭圆的长轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

final float getTouchMinor(int pointerIndex)

返回描述给定指针 索引的接触点触摸区域的椭圆的短轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

final float getTouchMinor()

getTouchMinor(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getX(int pointerIndex)

返回给定指针 索引的此事件的X坐标(使用 getPointerId(int)查找此索引的指针标识符)。

final float getX()

getX(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getXPrecision()

返回正在报告的X坐标的精度。

final float getY()

getY(int)为第一个指针索引(可能是一个任意的指针标识符)。

final float getY(int pointerIndex)

返回给定指针 索引的此事件的Y坐标(使用 getPointerId(int)查找此索引的指针标识符)。

final float getYPrecision()

返回正在报告的Y坐标的精度。

final boolean isButtonPressed(int button)

检查是否按下了鼠标或手写笔按钮(或按钮组合)。

static MotionEvent obtain(long downTime, long eventTime, int action, float x, float y, int metaState)

创建一个新的MotionEvent,填充基本运动值的子集。

static MotionEvent obtain(long downTime, long eventTime, int action, int pointerCount, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags)

此方法在API级别9中已弃用。请改为使用obtain(long, long, int, float, float, float, float, int, float, float, int, int)

static MotionEvent obtain(long downTime, long eventTime, int action, int pointerCount, int[] pointerIds, PointerCoords[] pointerCoords, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags, int source, int flags)

此方法在API级别14中已弃用。请改为使用obtain(long, long, int, int, PointerProperties[], PointerCoords[], int, int, float, float, int, int, int, int)

static MotionEvent obtain(long downTime, long eventTime, int action, int pointerCount, PointerProperties[] pointerProperties, PointerCoords[] pointerCoords, int metaState, int buttonState, float xPrecision, float yPrecision, int deviceId, int edgeFlags, int source, int flags)

创建一个新的MotionEvent,填入定义运动的所有基本值。

static MotionEvent obtain(MotionEvent other)

创建一个新的MotionEvent,从现有的复制。

static MotionEvent obtain(long downTime, long eventTime, int action, float x, float y, float pressure, float size, int metaState, float xPrecision, float yPrecision, int deviceId, int edgeFlags)

创建一个新的MotionEvent,填入定义运动的所有基本值。

static MotionEvent obtainNoHistory(MotionEvent other)

创建一个新的MotionEvent,从现有的MotionEvent进行复制,但不包含任何历史点信息。

final void offsetLocation(float deltaX, float deltaY)

调整此事件的位置。

final void recycle()

回收MotionEvent,以供稍后调用者重新使用。

final void setAction(int action)

设置此事件的操作。

final void setEdgeFlags(int flags)

设置指示哪个边缘(如果有)被此MotionEvent触摸的位域。

final void setLocation(float x, float y)

设置此事件的位置。

final void setSource(int source)

修改事件的来源。

String toString()

返回对象的字符串表示形式。

final void transform(Matrix matrix)

将变换矩阵应用于事件中的所有点。

void writeToParcel(Parcel out, int flags)

将此对象平铺到一个包裹中。

Protected methods

void finalize()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。

Inherited methods

From class android.view.InputEvent
From class java.lang.Object
From interface android.os.Parcelable

Constants

ACTION_BUTTON_PRESS

Added in API level 23
int ACTION_BUTTON_PRESS

常量 getActionMasked() :按钮已被按下。

使用 getActionButton()来获取按下哪个按钮。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:11(0x0000000b)

ACTION_BUTTON_RELEASE

Added in API level 23
int ACTION_BUTTON_RELEASE

常量 getActionMasked() :一个按钮已被释放。

使用 getActionButton()来获取哪个按钮被释放。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:12(0x0000000c)

ACTION_CANCEL

Added in API level 1
int ACTION_CANCEL

常量为getActionMasked() :当前手势已中止。 你将不会再收到任何分数。 你应该将此视为一个事件,但不能执行你通常会采取的任何行动。

常量值:3(0x00000003)

ACTION_DOWN

Added in API level 1
int ACTION_DOWN

常量 getActionMasked() :按下的手势已开始,动作包含初始起始位置。

这也是检查按钮状态以区分二级和三级按钮点击并正确处理它们的好时机。 使用getButtonState()检索按钮状态。

常量值:0(0x00000000)

ACTION_HOVER_ENTER

Added in API level 14
int ACTION_HOVER_ENTER

常量为 getActionMasked() :指针未关闭,但已进入窗口或视图的边界。

此操作始终传递到指针下的窗口或视图。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:9(0x00000009)

ACTION_HOVER_EXIT

Added in API level 14
int ACTION_HOVER_EXIT

常量为 getActionMasked() :指针未关闭,但已退出窗口或视图的边界。

这个动作总是被传送到先前在指针下的窗口或视图。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:10(0x0000000a)

ACTION_HOVER_MOVE

Added in API level 12
int ACTION_HOVER_MOVE

常量为getActionMasked() :发生更改,但指针未关闭(不像ACTION_MOVE )。 该动作包含最近的点以及自上次悬停移动事件以来的任何中间点。

此操作始终传递到指针下的窗口或视图。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:7(0x00000007)

ACTION_MASK

Added in API level 5
int ACTION_MASK

作为动作本身的动作代码部分的位掩码。

常量值:255(0x000000ff)

ACTION_MOVE

Added in API level 1
int ACTION_MOVE

常量getActionMasked() :在按下手势( ACTION_DOWNACTION_UP之间)期间发生了变化。 该动作包含最近的点以及自上次下移或移动事件以来的任何中间点。

常量值:2(0x00000002)

ACTION_OUTSIDE

Added in API level 3
int ACTION_OUTSIDE

常量为getActionMasked() :移动发生在UI元素的正常界限之外。 这不提供完整的手势,而只是移动/触摸的初始位置。

常量值:4(0x00000004)

ACTION_POINTER_1_DOWN

Added in API level 5
int ACTION_POINTER_1_DOWN

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_DOWN相关联的数据索引。

常量值:5(0x00000005)

ACTION_POINTER_1_UP

Added in API level 5
int ACTION_POINTER_1_UP

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_UP相关联的数据索引。

常数值:6(0x00000006)

ACTION_POINTER_2_DOWN

Added in API level 5
int ACTION_POINTER_2_DOWN

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_DOWN关联的数据索引。

常量值:261(0x00000105)

ACTION_POINTER_2_UP

Added in API level 5
int ACTION_POINTER_2_UP

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_UP关联的数据索引。

常量值:262(0x00000106)

ACTION_POINTER_3_DOWN

Added in API level 5
int ACTION_POINTER_3_DOWN

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_DOWN关联的数据索引。

常量值:517(0x00000205)

ACTION_POINTER_3_UP

Added in API level 5
int ACTION_POINTER_3_UP

此常数在API级别8中已弃用。
使用ACTION_POINTER_INDEX_MASK检索与ACTION_POINTER_UP关联的数据索引。

常量值:518(0x00000206)

ACTION_POINTER_DOWN

Added in API level 5
int ACTION_POINTER_DOWN

常量为 getActionMasked() :非主指针已关闭。

使用 getActionIndex()来检索改变的指针的索引。

该索引编码在由 getAction()返回的未屏蔽操作的 ACTION_POINTER_INDEX_MASK位中。

常量值:5(0x00000005)

ACTION_POINTER_ID_MASK

Added in API level 5
int ACTION_POINTER_ID_MASK

此常数在API级别8中已弃用。
将其重命名为ACTION_POINTER_INDEX_MASK以匹配这些位中包含的实际数据。

常量值:65280(0x0000ff00)

ACTION_POINTER_ID_SHIFT

Added in API level 5
int ACTION_POINTER_ID_SHIFT

此常数在API级别8中已弃用。
将其重命名为ACTION_POINTER_INDEX_SHIFT以匹配这些位中包含的实际数据。

常量值:8(0x00000008)

ACTION_POINTER_INDEX_MASK

Added in API level 8
int ACTION_POINTER_INDEX_MASK

代表指针索引的动作代码中的位,与ACTION_POINTER_DOWNACTION_POINTER_UP 向下移动ACTION_POINTER_INDEX_SHIFT可以找到指针向上或向下数据的实际指针索引; 你可以得到它的标识符与getPointerId(int) ,并与实际数据getX(int)等。

也可以看看:

常量值:65280(0x0000ff00)

ACTION_POINTER_INDEX_SHIFT

Added in API level 8
int ACTION_POINTER_INDEX_SHIFT

按照 ACTION_POINTER_INDEX_MASK定义的保存指针索引的动作位进行 ACTION_POINTER_INDEX_MASK

也可以看看:

常量值:8(0x00000008)

ACTION_POINTER_UP

Added in API level 5
int ACTION_POINTER_UP

getActionMasked()常量:非主指针已上升。

使用 getActionIndex()来检索已更改的指针的索引。

该指数在编码 ACTION_POINTER_INDEX_MASK返回的未屏蔽作用的位 getAction()

常数值:6(0x00000006)

ACTION_SCROLL

Added in API level 12
int ACTION_SCROLL

getActionMasked()常量:运动事件包含相对垂直和/或水平滚动偏移。 使用getAxisValue(int)AXIS_VSCROLLAXIS_HSCROLL检索信息。 此事件发送时,指针可能会或可能不会关闭。

此操作始终传递到指针下的窗口或视图,该指针可能不是当前触摸的窗口或视图。

此操作不是触摸事件,因此将其交付给 onGenericMotionEvent(MotionEvent)而不是 onTouchEvent(MotionEvent)

常量值:8(0x00000008)

ACTION_UP

Added in API level 1
int ACTION_UP

常量为 getActionMasked() :按下的手势已完成,该动作包含最后释放位置以及自上次下移或移动事件以来的任何中间点。

常数值:1(0x00000001)

AXIS_BRAKE

Added in API level 12
int AXIS_BRAKE

轴常数:运动事件的制动轴。

  • For a joystick, reports the absolute position of the brake control. The value is normalized to a range from 0.0 (no braking) to 1.0 (maximum braking).

也可以看看:

常量值:23(0x00000017)

AXIS_DISTANCE

Added in API level 14
int AXIS_DISTANCE

轴常数:运动事件的距离轴。

  • For a stylus, reports the distance of the stylus from the screen. A value of 0.0 indicates direct contact and larger values indicate increasing distance from the surface.

也可以看看:

常量值:24(0x00000018)

AXIS_GAS

Added in API level 12
int AXIS_GAS

轴常数:运动事件的气体轴。

  • For a joystick, reports the absolute position of the gas (accelerator) control. The value is normalized to a range from 0.0 (no acceleration) to 1.0 (maximum acceleration).

也可以看看:

常量值:22(0x00000016)

AXIS_GENERIC_1

Added in API level 12
int AXIS_GENERIC_1

轴常数:运动事件的通用1轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:32(0x00000020)

AXIS_GENERIC_10

Added in API level 12
int AXIS_GENERIC_10

轴常数:运动事件的通用10轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:41(0x00000029)

AXIS_GENERIC_11

Added in API level 12
int AXIS_GENERIC_11

轴常数:运动事件的通用11轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:42(0x0000002a)

AXIS_GENERIC_12

Added in API level 12
int AXIS_GENERIC_12

轴常数:运动事件的通用12轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:43(0x0000002b)

AXIS_GENERIC_13

Added in API level 12
int AXIS_GENERIC_13

轴常数:运动事件的通用13轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:44(0x0000002c)

AXIS_GENERIC_14

Added in API level 12
int AXIS_GENERIC_14

轴常数:运动事件的通用14轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:45(0x0000002d)

AXIS_GENERIC_15

Added in API level 12
int AXIS_GENERIC_15

轴常数:运动事件的通用15轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:46(0x0000002e)

AXIS_GENERIC_16

Added in API level 12
int AXIS_GENERIC_16

轴常数:运动事件的通用16轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:47(0x0000002f)

AXIS_GENERIC_2

Added in API level 12
int AXIS_GENERIC_2

轴常数:运动事件的通用2轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:33(0x00000021)

AXIS_GENERIC_3

Added in API level 12
int AXIS_GENERIC_3

轴常数:运动事件的通用3轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:34(0x00000022)

AXIS_GENERIC_4

Added in API level 12
int AXIS_GENERIC_4

轴常数:运动事件的通用4轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:35(0x00000023)

AXIS_GENERIC_5

Added in API level 12
int AXIS_GENERIC_5

轴常数:运动事件的通用5轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:36(0x00000024)

AXIS_GENERIC_6

Added in API level 12
int AXIS_GENERIC_6

轴常数:运动事件的通用6轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:37(0x00000025)

AXIS_GENERIC_7

Added in API level 12
int AXIS_GENERIC_7

轴常数:运动事件的通用7轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:38(0x00000026)

AXIS_GENERIC_8

Added in API level 12
int AXIS_GENERIC_8

轴常数:运动事件的通用8轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:39(0x00000027)

AXIS_GENERIC_9

Added in API level 12
int AXIS_GENERIC_9

轴常数:运动事件的通用9轴。 通用轴的解释是特定于设备的。

也可以看看:

常量值:40(0x00000028)

AXIS_HAT_X

Added in API level 12
int AXIS_HAT_X

轴常数:运动事件的帽子X轴。

  • For a joystick, reports the absolute X position of the directional hat control. The value is normalized to a range from -1.0 (left) to 1.0 (right).

也可以看看:

常量值:15(0x0000000f)

AXIS_HAT_Y

Added in API level 12
int AXIS_HAT_Y

轴常数:动作事件的帽子Y轴。

  • For a joystick, reports the absolute Y position of the directional hat control. The value is normalized to a range from -1.0 (up) to 1.0 (down).

也可以看看:

常量值:16(0x00000010)

AXIS_HSCROLL

Added in API level 12
int AXIS_HSCROLL

轴常数:水平滚动运动事件的轴。

  • For a mouse, reports the relative movement of the horizontal scroll wheel. The value is normalized to a range from -1.0 (left) to 1.0 (right).

该轴应该用于水平滚动视图。

也可以看看:

常量值:10(0x0000000a)

AXIS_LTRIGGER

Added in API level 12
int AXIS_LTRIGGER

轴常数:左运动事件的触发轴。

  • For a joystick, reports the absolute position of the left trigger control. The value is normalized to a range from 0.0 (released) to 1.0 (fully pressed).

也可以看看:

常量值:17(0x00000011)

AXIS_ORIENTATION

Added in API level 12
int AXIS_ORIENTATION

轴常数:运动事件的方向轴。

  • For a touch screen or touch pad, reports the orientation of the finger or tool in radians relative to the vertical plane of the device. An angle of 0 radians indicates that the major axis of contact is oriented upwards, is perfectly circular or is of unknown orientation. A positive angle indicates that the major axis of contact is oriented to the right. A negative angle indicates that the major axis of contact is oriented to the left. The full range is from -PI/2 radians (finger pointing fully left) to PI/2 radians (finger pointing fully right).
  • For a stylus, the orientation indicates the direction in which the stylus is pointing in relation to the vertical axis of the current orientation of the screen. The range is from -PI radians to PI radians, where 0 is pointing up, -PI/2 radians is pointing left, -PI or PI radians is pointing down, and PI/2 radians is pointing right. See also AXIS_TILT.

也可以看看:

常量值:8(0x00000008)

AXIS_PRESSURE

Added in API level 12
int AXIS_PRESSURE

轴常数:运动事件的压力轴。

  • For a touch screen or touch pad, reports the approximate pressure applied to the surface by a finger or other tool. The value is normalized to a range from 0 (no pressure at all) to 1 (normal pressure), although values higher than 1 may be generated depending on the calibration of the input device.
  • For a trackball, the value is set to 1 if the trackball button is pressed or 0 otherwise.
  • For a mouse, the value is set to 1 if the primary mouse button is pressed or 0 otherwise.

也可以看看:

常量值:2(0x00000002)

AXIS_RELATIVE_X

Added in API level 24
int AXIS_RELATIVE_X

轴常数:运动事件的x位置的运动。

  • For a mouse, reports a difference of x position between the previous position. This is useful when pointer is captured, in that case the mouse pointer doesn't change the location but this axis reports the difference which allows the app to see how the mouse is moved.

也可以看看:

常量值:27(0x0000001b)

AXIS_RELATIVE_Y

Added in API level 24
int AXIS_RELATIVE_Y

轴常数:运动事件的y位置的运动。

这与 AXIS_RELATIVE_X类似,但对于y轴。

也可以看看:

常量值:28(0x0000001c)

AXIS_RTRIGGER

Added in API level 12
int AXIS_RTRIGGER

轴常数:右运动事件的触发轴。

  • For a joystick, reports the absolute position of the right trigger control. The value is normalized to a range from 0.0 (released) to 1.0 (fully pressed).

也可以看看:

常量值:18(0x00000012)

AXIS_RUDDER

Added in API level 12
int AXIS_RUDDER

轴常数:运动事件的舵轴。

  • For a joystick, reports the absolute position of the rudder control. The value is normalized to a range from -1.0 (turn left) to 1.0 (turn right).

也可以看看:

常量值:20(0x00000014)

AXIS_RX

Added in API level 12
int AXIS_RX

轴常数:X运动事件的旋转轴。

  • For a joystick, reports the absolute rotation angle about the X axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise).

也可以看看:

常量值:12(0x0000000c)

AXIS_RY

Added in API level 12
int AXIS_RY

轴常数:Y运动事件的旋转轴。

  • For a joystick, reports the absolute rotation angle about the Y axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise).

也可以看看:

常量值:13(0x0000000d)

AXIS_RZ

Added in API level 12
int AXIS_RZ

轴常数:Z运动事件的旋转轴。

  • For a joystick, reports the absolute rotation angle about the Z axis. The value is normalized to a range from -1.0 (counter-clockwise) to 1.0 (clockwise). On game pads with two analog joysticks, this axis is often reinterpreted to report the absolute Y position of the second joystick instead.

也可以看看:

常量值:14(0x0000000e)

AXIS_SIZE

Added in API level 12
int AXIS_SIZE

轴常数:运动事件的大小轴。

  • For a touch screen or touch pad, reports the approximate size of the contact area in relation to the maximum detectable size for the device. The value is normalized to a range from 0 (smallest detectable size) to 1 (largest detectable size), although it is not a linear scale. This value is of limited use. To obtain calibrated size information, use AXIS_TOUCH_MAJOR or AXIS_TOOL_MAJOR.

也可以看看:

常量值:3(0x00000003)

AXIS_THROTTLE

Added in API level 12
int AXIS_THROTTLE

轴常数:动作事件的节流轴。

  • For a joystick, reports the absolute position of the throttle control. The value is normalized to a range from 0.0 (fully open) to 1.0 (fully closed).

也可以看看:

常量值:19(0x00000013)

AXIS_TILT

Added in API level 14
int AXIS_TILT

轴常数:运动事件的倾斜轴。

  • For a stylus, reports the tilt angle of the stylus in radians where 0 radians indicates that the stylus is being held perpendicular to the surface, and PI/2 radians indicates that the stylus is being held flat against the surface.

也可以看看:

常量值:25(0x00000019)

AXIS_TOOL_MAJOR

Added in API level 12
int AXIS_TOOL_MAJOR

轴常量:运动事件的ToolMajor轴。

  • For a touch screen, reports the length of the major axis of an ellipse that represents the size of the approaching finger or tool used to make contact.
  • For a touch pad, reports the length of the major axis of an ellipse that represents the size of the approaching finger or tool used to make contact. The units are device-dependent; use getMotionRange(int) to query the effective range of values.

当触摸是圆形时,主轴和副轴的长度将相等。

由于工具可能未完全接触触摸传感器,工具尺寸可能大于触摸尺寸。

也可以看看:

常数值:6(0x00000006)

AXIS_TOOL_MINOR

Added in API level 12
int AXIS_TOOL_MINOR

轴常数:运动事件的ToolMinor轴。

  • For a touch screen, reports the length of the minor axis of an ellipse that represents the size of the approaching finger or tool used to make contact.
  • For a touch pad, reports the length of the minor axis of an ellipse that represents the size of the approaching finger or tool used to make contact. The units are device-dependent; use getMotionRange(int) to query the effective range of values.

当触摸是圆形时,主轴和副轴的长度将相等。

由于工具可能未完全接触触摸传感器,工具尺寸可能大于触摸尺寸。

也可以看看:

常量值:7(0x00000007)

AXIS_TOUCH_MAJOR

Added in API level 12
int AXIS_TOUCH_MAJOR

轴常量:触摸运动事件的主轴。

  • For a touch screen, reports the length of the major axis of an ellipse that represents the touch area at the point of contact. The units are display pixels.
  • For a touch pad, reports the length of the major axis of an ellipse that represents the touch area at the point of contact. The units are device-dependent; use getMotionRange(int) to query the effective range of values.

也可以看看:

常量值:4(0x00000004)

AXIS_TOUCH_MINOR

Added in API level 12
int AXIS_TOUCH_MINOR

轴常数:动作事件的TouchMinor轴。

  • For a touch screen, reports the length of the minor axis of an ellipse that represents the touch area at the point of contact. The units are display pixels.
  • For a touch pad, reports the length of the minor axis of an ellipse that represents the touch area at the point of contact. The units are device-dependent; use getMotionRange(int) to query the effective range of values.

当触摸是圆形时,主轴和副轴的长度将相等。

也可以看看:

常量值:5(0x00000005)

AXIS_VSCROLL

Added in API level 12
int AXIS_VSCROLL

轴常数:垂直移动事件的轴。

  • For a mouse, reports the relative movement of the vertical scroll wheel. The value is normalized to a range from -1.0 (down) to 1.0 (up).

该轴应该用于垂直滚动视图。

也可以看看:

常量值:9(0x00000009)

AXIS_WHEEL

Added in API level 12
int AXIS_WHEEL

轴常数:运动事件的轮轴。

  • For a joystick, reports the absolute position of the steering wheel control. The value is normalized to a range from -1.0 (turn left) to 1.0 (turn right).

也可以看看:

常量值:21(0x00000015)

AXIS_X

Added in API level 12
int AXIS_X

轴常数:运动事件的X轴。

  • For a touch screen, reports the absolute X screen position of the center of the touch contact area. The units are display pixels.
  • For a touch pad, reports the absolute X surface position of the center of the touch contact area. The units are device-dependent; use getMotionRange(int) to query the effective range of values.
  • For a mouse, reports the absolute X screen position of the mouse pointer. The units are display pixels.
  • For a trackball, reports the relative horizontal displacement of the trackball. The value is normalized to a range from -1.0 (left) to 1.0 (right).
  • For a joystick, reports the absolute X position of the joystick. The value is normalized to a range from -1.0 (left) to 1.0 (right).

也可以看看:

常量值:0(0x00000000)

AXIS_Y

Added in API level 12
int AXIS_Y

轴常数:运动事件的Y轴。

  • For a touch screen, reports the absolute Y screen position of the center of the touch contact area. The units are display pixels.
  • For a touch pad, reports the absolute Y surface position of the center of the touch contact area. The units are device-dependent; use getMotionRange(int) to query the effective range of values.
  • For a mouse, reports the absolute Y screen position of the mouse pointer. The units are display pixels.
  • For a trackball, reports the relative vertical displacement of the trackball. The value is normalized to a range from -1.0 (up) to 1.0 (down).
  • For a joystick, reports the absolute Y position of the joystick. The value is normalized to a range from -1.0 (up or far) to 1.0 (down or near).

也可以看看:

常数值:1(0x00000001)

AXIS_Z

Added in API level 12
int AXIS_Z

轴常数:运动事件的Z轴。

  • For a joystick, reports the absolute Z position of the joystick. The value is normalized to a range from -1.0 (high) to 1.0 (low). On game pads with two analog joysticks, this axis is often reinterpreted to report the absolute X position of the second joystick instead.

也可以看看:

常量值:11(0x0000000b)

BUTTON_BACK

Added in API level 14
int BUTTON_BACK

按钮常量:按下后退按钮(鼠标后退按钮)。

按下此按钮时,系统可能会向应用程序发送 KEYCODE_BACK按键。

也可以看看:

常量值:8(0x00000008)

BUTTON_FORWARD

Added in API level 14
int BUTTON_FORWARD

按钮常量:按下前进按钮(鼠标前进按钮)。

按下此按钮时,系统可能会向应用程序发送 KEYCODE_FORWARD按键。

也可以看看:

常量值:16(0x00000010)

BUTTON_PRIMARY

Added in API level 14
int BUTTON_PRIMARY

按钮常量:主按钮(鼠标左键)。 此按钮常数不会响应用手指或笔尖轻松触摸设置。 用户必须实际按下一个按钮。

也可以看看:

常数值:1(0x00000001)

BUTTON_SECONDARY

Added in API level 14
int BUTTON_SECONDARY

按钮常量:辅助按钮(鼠标右键)。

也可以看看:

常量值:2(0x00000002)

BUTTON_STYLUS_PRIMARY

Added in API level 23
int BUTTON_STYLUS_PRIMARY

按钮常量:主笔按钮被按下。

也可以看看:

常量值:32(0x00000020)

BUTTON_STYLUS_SECONDARY

Added in API level 23
int BUTTON_STYLUS_SECONDARY

按钮常量:按下次手写笔按钮。

也可以看看:

常量值:64(0x00000040)

BUTTON_TERTIARY

Added in API level 14
int BUTTON_TERTIARY

按钮常量:第三级按钮(鼠标中键)。

也可以看看:

常量值:4(0x00000004)

EDGE_BOTTOM

Added in API level 1
int EDGE_BOTTOM

指示运动事件的标志与屏幕的底部边缘相交。

常量值:2(0x00000002)

EDGE_LEFT

Added in API level 1
int EDGE_LEFT

指示运动事件的标志与屏幕的左边缘相交。

常量值:4(0x00000004)

EDGE_RIGHT

Added in API level 1
int EDGE_RIGHT

指示运动事件的标志与屏幕的右边缘相交。

常量值:8(0x00000008)

EDGE_TOP

Added in API level 1
int EDGE_TOP

指示运动事件的标志与屏幕的上边缘相交。

常数值:1(0x00000001)

FLAG_WINDOW_IS_OBSCURED

Added in API level 9
int FLAG_WINDOW_IS_OBSCURED

该标志表示接收到该运动事件的窗口部分或全部被其上方的另一个可见窗口遮挡。 即使事件没有直接通过遮挡区域,该标志也会设置为true。 安全敏感的应用程序可以检查该标志以识别恶意应用程序可能为了误导用户或劫持触摸而掩盖其部分内容的情况。 适当的回应可能是放弃可疑的触摸或采取额外的预防措施来确认用户的实际意图。

常数值:1(0x00000001)

INVALID_POINTER_ID

Added in API level 14
int INVALID_POINTER_ID

无效的指针ID。 此值(-1)可用作占位符来指示指针ID尚未分配或不可用。 它不能作为MotionEvent内的指针ID出现。

常量值:-1(0xffffffff)

TOOL_TYPE_ERASER

Added in API level 14
int TOOL_TYPE_ERASER

工具类型常量:该工具是以倒立姿势使用的橡皮擦或手写笔。

也可以看看:

常量值:4(0x00000004)

TOOL_TYPE_FINGER

Added in API level 14
int TOOL_TYPE_FINGER

工具类型常量:该工具是一个手指。

也可以看看:

常数值:1(0x00000001)

TOOL_TYPE_MOUSE

Added in API level 14
int TOOL_TYPE_MOUSE

工具类型常量:该工具是鼠标或触控板。

也可以看看:

常量值:3(0x00000003)

TOOL_TYPE_STYLUS

Added in API level 14
int TOOL_TYPE_STYLUS

工具类型常量:该工具是手写笔。

也可以看看:

常量值:2(0x00000002)

TOOL_TYPE_UNKNOWN

Added in API level 14
int TOOL_TYPE_UNKNOWN

工具类型常量:未知工具类型。 当工具类型未知或不相关时(例如跟踪球或其他非指向设备)使用此常数。

也可以看看:

常量值:0(0x00000000)

Fields

CREATOR

Added in API level 1
Creator<MotionEvent> CREATOR

Public methods

actionToString

Added in API level 19
String actionToString (int action)

如果未知,则返回表示指定的未屏蔽动作(如“ACTION_DOWN”,“ACTION_POINTER_DOWN(3)”)或等效数值常量(例如“35”)的符号名称的字符串。

Parameters
action int: The unmasked action.
Returns
String The symbolic name of the specified action.

也可以看看:

addBatch

Added in API level 9
void addBatch (long eventTime, 
                PointerCoords[] pointerCoords, 
                int metaState)

为此次活动中的一批动作添加一个新动作。 事件的当前位置,位置和大小已更新为新值。 事件中的当前值将被添加到历史值列表中。 仅适用于ACTION_MOVEACTION_HOVER_MOVE事件。

Parameters
eventTime long: The time stamp (in ms) for this data.
pointerCoords PointerCoords: The new pointer coordinates.
metaState int: Meta key state.

addBatch

Added in API level 1
void addBatch (long eventTime, 
                float x, 
                float y, 
                float pressure, 
                float size, 
                int metaState)

为此次活动中的一批动作添加一个新动作。 事件的当前位置,位置和大小已更新为新值。 事件中的当前值将被添加到历史值列表中。 仅适用于ACTION_MOVEACTION_HOVER_MOVE事件。

Parameters
eventTime long: The time stamp (in ms) for this data.
x float: The new X position.
y float: The new Y position.
pressure float: The new pressure.
size float: The new size.
metaState int: Meta key state.

axisFromString

Added in API level 12
int axisFromString (String symbolicName)

通过其符号名称(如“AXIS_X”)或等效数值常量(如“42”)获取轴。

Parameters
symbolicName String: The symbolic name of the axis.
Returns
int The axis or -1 if not found.

也可以看看:

axisToString

Added in API level 12
String axisToString (int axis)

如果未知,则返回表示指定轴的符号名称(如“AXIS_X”)或等效数字常量(如“42”)的字符串。

Parameters
axis int: The axis.
Returns
String The symbolic name of the specified axis.

findPointerIndex

Added in API level 5
int findPointerIndex (int pointerId)

给定一个指针标识符,找到它在事件中的数据索引。

Parameters
pointerId int: The identifier of the pointer to be found.
Returns
int Returns either the index of the pointer (for use with getX(int) et al.), or -1 if there is no data available for that pointer identifier.

getAction

Added in API level 1
int getAction ()

返回正在执行的操作。 考虑使用getActionMasked()getActionIndex()来检索单独的被屏蔽动作和指针索引。

Returns
int The action, such as ACTION_DOWN or the combination of ACTION_POINTER_DOWN with a shifted pointer index.

getActionButton

Added in API level 23
int getActionButton ()

获取在按下或释放操作期间哪个按钮已被修改。 对于ACTION_BUTTON_PRESSACTION_BUTTON_RELEASE以外的ACTION_BUTTON_PRESS ,返回值未定义。

Returns
int

也可以看看:

getActionIndex

Added in API level 8
int getActionIndex ()

对于由getActionMasked()返回的ACTION_POINTER_DOWNACTION_POINTER_UP ,这将返回关联的指针索引。 该指数可以与使用getPointerId(int)getX(int)getY(int)getPressure(int) ,并getSize(int) ,以获取有关已经向上或向下的指针信息。

Returns
int The index associated with the action.

getActionMasked

Added in API level 8
int getActionMasked ()

返回正在执行的被屏蔽的操作,不带指针索引信息。 使用getActionIndex()返回与指针操作关联的索引。

Returns
int The action, such as ACTION_DOWN or ACTION_POINTER_DOWN.

getAxisValue

Added in API level 12
float getAxisValue (int axis, 
                int pointerIndex)

返回给定指针 索引的请求轴的值(使用 getPointerId(int)查找此索引的指针标识符)。

Parameters
axis int: The axis identifier for the axis value to retrieve.
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float The value of the axis, or 0 if the axis is not available.

也可以看看:

getAxisValue

Added in API level 12
float getAxisValue (int axis)

getAxisValue(int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
axis int: The axis identifier for the axis value to retrieve.
Returns
float

也可以看看:

getButtonState

Added in API level 14
int getButtonState ()

获取按下的所有按钮的状态,例如鼠标或手写笔按钮。

Returns
int The button state.

也可以看看:

getDeviceId

Added in API level 1
int getDeviceId ()

获取此事件来自的设备的ID。 ID为0表示事件不是来自物理设备,而是映射到默认键盘映射。 其他数字是任意的,你不应该依赖于这些值。

Returns
int The device id.

getDownTime

Added in API level 1
long getDownTime ()

返回用户最初按下时启动位置事件流的时间(以毫秒为单位)。

Returns
long

getEdgeFlags

Added in API level 1
int getEdgeFlags ()

返回一个位域,指示此MotionEvent触摸哪条边(如果有)。 对于触摸事件,客户可以使用它来确定用户的手指是否触摸显示器的边缘。 此属性仅适用于ACTION_DOWN事件。

Returns
int

也可以看看:

getEventTime

Added in API level 1
long getEventTime ()

检索此事件发生的时间,在 uptimeMillis()时基中。

Returns
long Returns the time this event occurred, in the uptimeMillis() time base.

getFlags

Added in API level 9
int getFlags ()

获取运动事件标志。

Returns
int

也可以看看:

getHistoricalAxisValue

Added in API level 12
float getHistoricalAxisValue (int axis, 
                int pointerIndex, 
                int pos)

根据getAxisValue(int, int) ,返回此事件与给定指针的上一个事件之间发生的请求轴的历史值。 仅适用于ACTION_MOVE事件。

Parameters
axis int: The axis identifier for the axis value to retrieve.
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float The value of the axis, or 0 if the axis is not available.

也可以看看:

getHistoricalAxisValue

Added in API level 12
float getHistoricalAxisValue (int axis, 
                int pos)

getHistoricalAxisValue(int, int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
axis int: The axis identifier for the axis value to retrieve.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalEventTime

Added in API level 1
long getHistoricalEventTime (int pos)

uptimeMillis()时基为基础,返回此事件与上一事件之间历史移动的时间。

这仅适用于ACTION_MOVE事件。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
long Returns the time that a historical movement occurred between this event and the previous event, in the uptimeMillis() time base.

也可以看看:

getHistoricalOrientation

Added in API level 9
float getHistoricalOrientation (int pointerIndex, 
                int pos)

按照getOrientation(int) ,返回此事件与给定指针的上一个事件之间发生的历史方向坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalOrientation

Added in API level 9
float getHistoricalOrientation (int pos)

getHistoricalOrientation(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalPointerCoords

Added in API level 9
void getHistoricalPointerCoords (int pointerIndex, 
                int pos, 
                MotionEvent.PointerCoords outPointerCoords)

使用历史指针坐标数据填充MotionEvent.PointerCoords对象,根据getPointerCoords(int, MotionEvent.PointerCoords) ,发生在该事件和给定指针的上一个事件之间。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
outPointerCoords MotionEvent.PointerCoords: The pointer coordinate object to populate.

也可以看看:

getHistoricalPressure

Added in API level 5
float getHistoricalPressure (int pointerIndex, 
                int pos)

根据getPressure(int) ,返回此事件与给定指针的上一个事件之间发生的历史压力坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalPressure

Added in API level 1
float getHistoricalPressure (int pos)

getHistoricalPressure(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalSize

Added in API level 1
float getHistoricalSize (int pos)

getHistoricalSize(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalSize

Added in API level 5
float getHistoricalSize (int pointerIndex, 
                int pos)

按照getSize(int) ,返回此事件与给定指针的上一个事件之间发生的历史大小坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalToolMajor

Added in API level 9
float getHistoricalToolMajor (int pos)

getHistoricalToolMajor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalToolMajor

Added in API level 9
float getHistoricalToolMajor (int pointerIndex, 
                int pos)

按照getToolMajor(int) ,返回此事件与给定指针的上一个事件之间发生的历史工具长轴坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalToolMinor

Added in API level 9
float getHistoricalToolMinor (int pos)

getHistoricalToolMinor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalToolMinor

Added in API level 9
float getHistoricalToolMinor (int pointerIndex, 
                int pos)

按照getToolMinor(int) ,返回此事件与给定指针的上一个事件之间发生的历史工具短轴坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalTouchMajor

Added in API level 9
float getHistoricalTouchMajor (int pos)

getHistoricalTouchMajor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalTouchMajor

Added in API level 9
float getHistoricalTouchMajor (int pointerIndex, 
                int pos)

按照getTouchMajor(int) ,返回此事件与给定指针的上一个事件之间发生的历史触摸主轴坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalTouchMinor

Added in API level 9
float getHistoricalTouchMinor (int pointerIndex, 
                int pos)

按照getTouchMinor(int) ,返回此事件与给定指针的上一个事件之间发生的历史触摸短轴坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalTouchMinor

Added in API level 9
float getHistoricalTouchMinor (int pos)

getHistoricalTouchMinor(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalX

Added in API level 1
float getHistoricalX (int pos)

getHistoricalX(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalX

Added in API level 5
float getHistoricalX (int pointerIndex, 
                int pos)

按照getX(int) ,返回此事件与给定指针的上一个事件之间发生的历史X坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalY

Added in API level 1
float getHistoricalY (int pos)

getHistoricalY(int, int)为第一个指针索引(可能是一个任意的指针标识符)。

Parameters
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistoricalY

Added in API level 5
float getHistoricalY (int pointerIndex, 
                int pos)

按照getY(int) ,返回此事件与给定指针的上一个事件之间发生的历史Y坐标。 仅适用于ACTION_MOVE事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
pos int: Which historical value to return; must be less than getHistorySize()
Returns
float

也可以看看:

getHistorySize

Added in API level 1
int getHistorySize ()

返回此事件中的历史点数。 这是本次事件与上一次事件之间发生的移动。 这仅适用于ACTION_MOVE事件 - 所有其他操作的大小都为0。

Returns
int Returns the number of historical points in the event.

getMetaState

Added in API level 1
int getMetaState ()

返回生成事件时有效的元/键的状态。 这与KeyEvent.getMetaState返回的值相同。

Returns
int an integer in which each bit set to 1 represents a pressed meta key

也可以看看:

getOrientation

Added in API level 9
float getOrientation ()

getOrientation(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getOrientation

Added in API level 9
float getOrientation (int pointerIndex)

对于给定的指针索引,返回触摸区域和工具区域的垂直方向的顺时针方向(使用getPointerId(int)查找此索引的指针标识符)。 0弧度的角度表示接触的主轴向上,完全是圆形的或者未知的定向。 正角表示接触的主轴朝向右侧。 负角度表示接触的主轴朝向左侧。 全范围是从-PI / 2弧度(手指完全向左)到PI / 2弧度(手指完全向右)。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getPointerCoords

Added in API level 9
void getPointerCoords (int pointerIndex, 
                MotionEvent.PointerCoords outPointerCoords)

使用指定指针索引的指针坐标数据填充 MotionEvent.PointerCoords对象。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
outPointerCoords MotionEvent.PointerCoords: The pointer coordinate object to populate.

也可以看看:

getPointerCount

Added in API level 5
int getPointerCount ()

包含在这个事件中的数据指针的数量。 始终> = 1。

Returns
int

getPointerId

Added in API level 5
int getPointerId (int pointerIndex)

在此事件中返回与特定指针数据索引关联的指针标识符。 该标识符告诉你与数据相关联的实际指针数量,从当前手势开始起就考虑到单个指针上下移动。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
int

getPointerProperties

Added in API level 14
void getPointerProperties (int pointerIndex, 
                MotionEvent.PointerProperties outPointerProperties)

使用指定指针索引的指针属性填充 MotionEvent.PointerProperties对象。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
outPointerProperties MotionEvent.PointerProperties: The pointer properties object to populate.

也可以看看:

getPressure

Added in API level 5
float getPressure (int pointerIndex)

返回给定指针索引的此事件的当前压力(使用getPointerId(int)查找此索引的指针标识符)。 压力通常从0(完全无压力)到1(常压)范围内,然而取决于输入设备的校准,可能会产生高于1的值。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getPressure

Added in API level 1
float getPressure ()

getPressure(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getRawX

Added in API level 1
float getRawX ()

返回此事件的原始X坐标。 对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,在它已被调整为包含窗口和视图之前。

Returns
float

也可以看看:

getRawY

Added in API level 1
float getRawY ()

返回此事件的原始Y坐标。 对于屏幕上的触摸事件,这是事件在屏幕上的原始位置,在它已被调整为包含窗口和视图之前。

Returns
float

也可以看看:

getSize

Added in API level 5
float getSize (int pointerIndex)

返回给定指针索引的近似大小的缩放值(使用getPointerId(int)查找此索引的指针标识符)。 这代表了正在按下的屏幕区域的一些近似值; 与触摸相对应的像素的实际值用设备特定的值范围进行归一化,并缩放为介于0和1之间的值。可以使用大小的值来确定胖触摸事件。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getSize

Added in API level 1
float getSize ()

getSize(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getSource

Added in API level 9
int getSource ()

获取事件的来源。

Returns
int The event source or SOURCE_UNKNOWN if unknown.

getToolMajor

Added in API level 9
float getToolMajor (int pointerIndex)

返回描述给定指针索引的接近工具大小的椭圆的长轴长度(使用getPointerId(int)查找此索引的指针标识符)。 工具区域表示与接触点处的实际触摸区域无关的接触设备的手指或笔的估计大小。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getToolMajor

Added in API level 9
float getToolMajor ()

getToolMajor(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getToolMinor

Added in API level 9
float getToolMinor ()

getToolMinor(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getToolMinor

Added in API level 9
float getToolMinor (int pointerIndex)

返回描述给定指针索引的接近工具大小的椭圆的短轴长度(使用getPointerId(int)查找此索引的指针标识符)。 工具区域表示与接触点处的实际触摸区域无关的接触设备的手指或笔的估计大小。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getToolType

Added in API level 14
int getToolType (int pointerIndex)

获取给定指针索引的指针的工具类型。 工具类型指示用于进行接触的工具类型,如手指或触控笔(如果已知)。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
int The tool type of the pointer.

也可以看看:

getTouchMajor

Added in API level 9
float getTouchMajor ()

getTouchMajor(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getTouchMajor

Added in API level 9
float getTouchMajor (int pointerIndex)

返回描述给定指针 索引的接触点触摸区域的椭圆的长轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getTouchMinor

Added in API level 9
float getTouchMinor (int pointerIndex)

返回描述给定指针 索引的接触点触摸区域的椭圆的短轴长度(使用 getPointerId(int)查找此索引的指针标识符)。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getTouchMinor

Added in API level 9
float getTouchMinor ()

getTouchMinor(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getX

Added in API level 5
float getX (int pointerIndex)

返回给定指针索引的此事件的X坐标(使用getPointerId(int)查找此索引的指针标识符)。 整数是像素; 该值对于子像素精确的输入设备可能有一小部分。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getX

Added in API level 1
float getX ()

getX(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getXPrecision

Added in API level 1
float getXPrecision ()

返回正在报告的X坐标的精度。 您可以将此数字乘以getX()以查找X坐标的实际硬件值。

Returns
float Returns the precision of X coordinates being reported.

也可以看看:

getY

Added in API level 1
float getY ()

getY(int)为第一个指针索引(可能是一个任意的指针标识符)。

Returns
float

也可以看看:

getY

Added in API level 5
float getY (int pointerIndex)

返回给定指针索引的此事件的Y坐标(使用getPointerId(int)查找此索引的指针标识符)。 整数是像素; 该值对于子像素精确的输入设备可能有一小部分。

Parameters
pointerIndex int: Raw index of pointer to retrieve. Value may be from 0 (the first pointer that is down) to getPointerCount()-1.
Returns
float

也可以看看:

getYPrecision

Added in API level 1
float getYPrecision ()

返回正在报告的Y坐标的精度。 您可以将此数字乘以getY()以查找Y坐标的实际硬件值。

Returns
float Returns the precision of Y coordinates being reported.

也可以看看:

isButtonPressed

Added in API level 21
boolean isButtonPressed (int button)

检查是否按下了鼠标或手写笔按钮(或按钮组合)。

Parameters
button int: Button (or combination of buttons).
Returns
boolean True if specified buttons are pressed.

也可以看看:

obtain

Added in API level 1
MotionEvent obtain (long downTime, 
                long eventTime, 
                int action, 
                float x, 
                float y, 
                int metaState)

创建一个新的MotionEvent,填充基本运动值的子集。 这些未在此处指定的是:设备ID(始终为0),压力和大小(始终为1),x和y精度(始终为1)和edgeFlags(始终为0)。

Parameters
downTime long: The time (in ms) when the user originally pressed down to start a stream of position events. This must be obtained from uptimeMillis().
eventTime long: The the time (in ms) when this specific event was generated. This must be obtained from uptimeMillis().
action int: The kind of action being performed, such as ACTION_DOWN.
x float: The X coordinate of this event.
y float: The Y coordinate of this event.
metaState int: The state of any meta / modifier keys that were in effect when the event was generated.
Returns
MotionEvent

obtain

Added in API level 5
MotionEvent obtain (long downTime, 
                long eventTime, 
                int action, 
                int pointerCount, 
                float x, 
                float y, 
                float pressure, 
                float size, 
                int metaState, 
                float xPrecision, 
                float yPrecision, 
                int deviceId, 
                int edgeFlags)

此方法在API级别9中已弃用。
改为使用obtain(long, long, int, float, float, float, float, int, float, float, int, int)

创建一个新的MotionEvent,填入定义运动的所有基本值。

Parameters
downTime long: The time (in ms) when the user originally pressed down to start a stream of position events. This must be obtained from uptimeMillis().
eventTime long: The the time (in ms) when this specific event was generated. This must be obtained from uptimeMillis().
action int: The kind of action being performed, such as ACTION_DOWN.
pointerCount int: The number of pointers that are active in this event.
x float: The X coordinate of this event.
y float: The Y coordinate of this event.
pressure float: The current pressure of this event. The pressure generally ranges from 0 (no pressure at all) to 1 (normal pressure), however values higher than 1 may be generated depending on the calibration of the input device.
size float: A scaled value of the approximate size of the area being pressed when touched with the finger. The actual value in pixels corresponding to the finger touch is normalized with a device specific range of values and scaled to a value between 0 and 1.
metaState int: The state of any meta / modifier keys that were in effect when the event was generated.
xPrecision float: The precision of the X coordinate being reported.
yPrecision float: The precision of the Y coordinate being reported.
deviceId int: The id for the device that this event came from. An id of zero indicates that the event didn't come from a physical device; other numbers are arbitrary and you shouldn't depend on the values.
edgeFlags int: A bitfield indicating which edges, if any, were touched by this MotionEvent.
Returns
MotionEvent

obtain

Added in API level 9
MotionEvent obtain (long downTime, 
                long eventTime, 
                int action, 
                int pointerCount, 
                int[] pointerIds, 
                PointerCoords[] pointerCoords, 
                int metaState, 
                float xPrecision, 
                float yPrecision, 
                int deviceId, 
                int edgeFlags, 
                int source, 
                int flags)

此方法在API级别14中已弃用。
改为使用obtain(long, long, int, int, PointerProperties[], PointerCoords[], int, int, float, float, int, int, int, int)

创建一个新的MotionEvent,填入定义运动的所有基本值。

Parameters
downTime long: The time (in ms) when the user originally pressed down to start a stream of position events. This must be obtained from uptimeMillis().
eventTime long: The the time (in ms) when this specific event was generated. This must be obtained from uptimeMillis().
action int: The kind of action being performed, such as ACTION_DOWN.
pointerCount int: The number of pointers that will be in this event.
pointerIds int: An array of pointerCount values providing an identifier for each pointer.
pointerCoords PointerCoords: An array of pointerCount values providing a MotionEvent.PointerCoords coordinate object for each pointer.
metaState int: The state of any meta / modifier keys that were in effect when the event was generated.
xPrecision float: The precision of the X coordinate being reported.
yPrecision float: The precision of the Y coordinate being reported.
deviceId int: The id for the device that this event came from. An id of zero indicates that the event didn't come from a physical device; other numbers are arbitrary and you shouldn't depend on the values.
edgeFlags int: A bitfield indicating which edges, if any, were touched by this MotionEvent.
source int: The source of this event.
flags int: The motion event flags.
Returns
MotionEvent

obtain

Added in API level 14
MotionEvent obtain (long downTime, 
                long eventTime, 
                int action, 
                int pointerCount, 
                PointerProperties[] pointerProperties, 
                PointerCoords[] pointerCoords, 
                int metaState, 
                int buttonState, 
                float xPrecision, 
                float yPrecision, 
                int deviceId, 
                int edgeFlags, 
                int source, 
                int flags)

创建一个新的MotionEvent,填入定义运动的所有基本值。

Parameters
downTime long: The time (in ms) when the user originally pressed down to start a stream of position events. This must be obtained from uptimeMillis().
eventTime long: The the time (in ms) when this specific event was generated. This must be obtained from uptimeMillis().
action int: The kind of action being performed, such as ACTION_DOWN.
pointerCount int: The number of pointers that will be in this event.
pointerProperties PointerProperties: An array of pointerCount values providing a MotionEvent.PointerProperties property object for each pointer, which must include the pointer identifier.
pointerCoords PointerCoords: An array of pointerCount values providing a MotionEvent.PointerCoords coordinate object for each pointer.
metaState int: The state of any meta / modifier keys that were in effect when the event was generated.
buttonState int: The state of buttons that are pressed.
xPrecision float: The precision of the X coordinate being reported.
yPrecision float: The precision of the Y coordinate being reported.
deviceId int: The id for the device that this event came from. An id of zero indicates that the event didn't come from a physical device; other numbers are arbitrary and you shouldn't depend on the values.
edgeFlags int: A bitfield indicating which edges, if any, were touched by this MotionEvent.
source int: The source of this event.
flags int: The motion event flags.
Returns
MotionEvent

obtain

Added in API level 1
MotionEvent obtain (MotionEvent other)

创建一个新的MotionEvent,从现有的复制。

Parameters
other MotionEvent
Returns
MotionEvent

obtain

Added in API level 1
MotionEvent obtain (long downTime, 
                long eventTime, 
                int action, 
                float x, 
                float y, 
                float pressure, 
                float size, 
                int metaState, 
                float xPrecision, 
                float yPrecision, 
                int deviceId, 
                int edgeFlags)

创建一个新的MotionEvent,填入定义运动的所有基本值。

Parameters
downTime long: The time (in ms) when the user originally pressed down to start a stream of position events. This must be obtained from uptimeMillis().
eventTime long: The the time (in ms) when this specific event was generated. This must be obtained from uptimeMillis().
action int: The kind of action being performed, such as ACTION_DOWN.
x float: The X coordinate of this event.
y float: The Y coordinate of this event.
pressure float: The current pressure of this event. The pressure generally ranges from 0 (no pressure at all) to 1 (normal pressure), however values higher than 1 may be generated depending on the calibration of the input device.
size float: A scaled value of the approximate size of the area being pressed when touched with the finger. The actual value in pixels corresponding to the finger touch is normalized with a device specific range of values and scaled to a value between 0 and 1.
metaState int: The state of any meta / modifier keys that were in effect when the event was generated.
xPrecision float: The precision of the X coordinate being reported.
yPrecision float: The precision of the Y coordinate being reported.
deviceId int: The id for the device that this event came from. An id of zero indicates that the event didn't come from a physical device; other numbers are arbitrary and you shouldn't depend on the values.
edgeFlags int: A bitfield indicating which edges, if any, were touched by this MotionEvent.
Returns
MotionEvent

obtainNoHistory

Added in API level 5
MotionEvent obtainNoHistory (MotionEvent other)

创建一个新的MotionEvent,从现有的MotionEvent进行复制,但不包含任何历史点信息。

Parameters
other MotionEvent
Returns
MotionEvent

offsetLocation

Added in API level 1
void offsetLocation (float deltaX, 
                float deltaY)

调整此事件的位置。

Parameters
deltaX float: Amount to add to the current X coordinate of the event.
deltaY float: Amount to add to the current Y coordinate of the event.

recycle

Added in API level 1
void recycle ()

回收MotionEvent,以供稍后调用者重新使用。 调用此函数后,您不得再次触摸该事件。

setAction

Added in API level 1
void setAction (int action)

设置此事件的操作。

Parameters
action int

setEdgeFlags

Added in API level 1
void setEdgeFlags (int flags)

设置指示哪个边缘(如果有)被此MotionEvent触摸的位域。

Parameters
flags int

也可以看看:

setLocation

Added in API level 1
void setLocation (float x, 
                float y)

设置此事件的位置。 将从当前位置到指定新位置的增量应用于offsetLocation(float, float)

Parameters
x float: New absolute X location.
y float: New absolute Y location.

setSource

Added in API level 12
void setSource (int source)

修改事件的来源。

Parameters
source int: The new source.

toString

Added in API level 1
String toString ()

返回对象的字符串表示形式。 一般来说, toString方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。

ObjecttoString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

transform

Added in API level 11
void transform (Matrix matrix)

将变换矩阵应用于事件中的所有点。

Parameters
matrix Matrix: The transformation matrix to apply.

writeToParcel

Added in API level 1
void writeToParcel (Parcel out, 
                int flags)

将此对象平铺到一个包裹中。

Parameters
out Parcel: The Parcel in which the object should be written.
flags int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.

Protected methods

finalize

Added in API level 1
void finalize ()

当垃圾收集确定没有更多对该对象的引用时,由对象上的垃圾回收器调用。 子类会覆盖finalize方法以处置系统资源或执行其他清理。

的常规协定finalize是,它被调用,如果当在Java TM虚拟机已确定不再有由该目的可以通过还没有死亡,除了作为一个动作的结果的任何线程访问的任何手段取决于某些其他可以完成的对象或类别的最终定稿。 方法finalize可以采取任何行动,包括使这个对象再次可用于其他线程; 然而, finalize的通常目的是在对象被不可撤销地丢弃之前执行清理操作。 例如,表示输入/输出连接的对象的finalize方法可能会执行显式I / O事务,以在永久丢弃该对象之前中断连接。

Objectfinalize方法Object执行特殊操作; 它只是正常返回。 Object子类可能会覆盖此定义。

Java编程语言不保证哪个线程将为任何给定的对象调用finalize方法。 但是,保证调用finalize的线程在调用finalize时不会保留任何用户可见的同步锁。 如果finalize方法引发未捕获的异常,则忽略该异常,并终止该对象的终止。

在针对某个对象调用了 finalize方法之后,在Java虚拟机再次确定没有任何方法可以通过任何尚未死亡的线程访问此对象之前,不会采取进一步的操作,包括可能的操作通过准备完成的其他对象或类别,此时该对象可能被丢弃。

对于任何给定的对象,Java虚拟机永远不会多次调用 finalize方法。

finalize方法抛出的任何异常 finalize导致终止此对象的终止,但会被忽略。

Throws
Throwable

Hooray!