# Print output for @column tags ?>
public
final
class
MotionEvent
extends InputEvent
implements
Parcelable
java.lang.Object | ||
↳ | android.view.InputEvent | |
↳ | android.view.MotionEvent |
Object used to report movement (mouse, pen, finger, trackball) events. Motion events may hold either absolute or relative movements and other data, depending on the type of device.
Motion events describe movements in terms of an action code and a set of axis values. The action code specifies the state change that occurred such as a pointer going down or up. The axis values describe the position and other movement properties.
For example, when the user first touches the screen, the system delivers a touch
event to the appropriate View
with the action code ACTION_DOWN
and a set of axis values that include the X and Y coordinates of the touch and
information about the pressure, size and orientation of the contact area.
Some devices can report multiple movement traces at the same time. Multi-touch screens emit one movement trace for each finger. The individual fingers or other objects that generate movement traces are referred to as pointers. Motion events contain information about all of the pointers that are currently active even if some of them have not moved since the last event was delivered.
The number of pointers only ever changes by one as individual pointers go up and down, except when the gesture is canceled.
Each pointer has a unique id that is assigned when it first goes down
(indicated by ACTION_DOWN
or ACTION_POINTER_DOWN
). A pointer id
remains valid until the pointer eventually goes up (indicated by ACTION_UP
or ACTION_POINTER_UP
) or when the gesture is canceled (indicated by
ACTION_CANCEL
).
The MotionEvent class provides many methods to query the position and other properties of
pointers, such as getX(int)
, getY(int)
, getAxisValue(int)
,
getPointerId(int)
, getToolType(int)
, and many others. Most of these
methods accept the pointer index as a parameter rather than the pointer id.
The pointer index of each pointer in the event ranges from 0 to one less than the value
returned by getPointerCount()
.
The order in which individual pointers appear within a motion event is undefined.
Thus the pointer index of a pointer can change from one event to the next but
the pointer id of a pointer is guaranteed to remain constant as long as the pointer
remains active. Use the getPointerId(int)
method to obtain the
pointer id of a pointer to track it across all subsequent motion events in a gesture.
Then for successive motion events, use the findPointerIndex(int)
method
to obtain the pointer index for a given pointer id in that motion event.
Mouse and stylus buttons can be retrieved using getButtonState()
. It is a
good idea to check the button state while handling ACTION_DOWN
as part
of a touch event. The application may choose to perform some different action
if the touch event starts due to a secondary button click, such as presenting a
context menu.
For efficiency, motion events with ACTION_MOVE
may batch together
multiple movement samples within a single object. The most current
pointer coordinates are available using getX(int)
and getY(int)
.
Earlier coordinates within the batch are accessed using getHistoricalX(int, int)
and getHistoricalY(int, int)
. The coordinates are "historical" only
insofar as they are older than the current coordinates in the batch; however,
they are still distinct from any other coordinates reported in prior motion events.
To process all coordinates in the batch in time order, first consume the historical
coordinates then consume the current coordinates.
Example: Consuming all samples for all pointers in a motion event in time order.
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));
}
}
The interpretation of the contents of a MotionEvent varies significantly depending on the source class of the device.
On pointing devices with source class InputDevice#SOURCE_CLASS_POINTER
such as touch screens, the pointer coordinates specify absolute
positions such as view X/Y coordinates. Each complete gesture is represented
by a sequence of motion events with actions that describe pointer state transitions
and movements. A gesture starts with a motion event with ACTION_DOWN
that provides the location of the first pointer down. As each additional
pointer that goes down or up, the framework will generate a motion event with
ACTION_POINTER_DOWN
or ACTION_POINTER_UP
accordingly.
Pointer movements are described by motion events with ACTION_MOVE
.
Finally, a gesture end either when the final pointer goes up as represented
by a motion event with ACTION_UP
or when gesture is canceled
with ACTION_CANCEL
.
Some pointing devices such as mice may support vertical and/or horizontal scrolling.
A scroll event is reported as a generic motion event with ACTION_SCROLL
that
includes the relative scroll offset in the AXIS_VSCROLL
and
AXIS_HSCROLL
axes. See getAxisValue(int)
for information
about retrieving these additional axes.
On trackball devices with source class InputDevice#SOURCE_CLASS_TRACKBALL
,
the pointer coordinates specify relative movements as X/Y deltas.
A trackball gesture consists of a sequence of movements described by motion
events with ACTION_MOVE
interspersed with occasional ACTION_DOWN
or ACTION_UP
motion events when the trackball button is pressed or released.
On joystick devices with source class InputDevice#SOURCE_CLASS_JOYSTICK
,
the pointer coordinates specify the absolute position of the joystick axes.
The joystick axis values are normalized to a range of -1.0 to 1.0 where 0.0 corresponds
to the center position. More information about the set of available axes and the
range of motion can be obtained using InputDevice#getMotionRange
.
Some common joystick axes are AXIS_X
, AXIS_Y
,
AXIS_HAT_X
, AXIS_HAT_Y
, AXIS_Z
and AXIS_RZ
.
Refer to InputDevice
for more information about how different kinds of
input devices and sources represent pointer coordinates.
Motion events are always delivered to views as a consistent stream of events. What constitutes a consistent stream varies depending on the type of device. For touch events, consistency implies that pointers go down one at a time, move around as a group and then go up one at a time or are canceled.
While the framework tries to deliver consistent streams of motion events to
views, it cannot guarantee it. Some events may be dropped or modified by
containing views in the application before they are delivered thereby making
the stream of events inconsistent. Views should always be prepared to
handle ACTION_CANCEL
and should tolerate anomalous
situations such as receiving a new ACTION_DOWN
without first having
received an ACTION_UP
for the prior gesture.
Nested classes | |
---|---|
class |
MotionEvent.PointerCoords
Transfer object for pointer coordinates. |
class |
MotionEvent.PointerProperties
Transfer object for pointer properties. |
Constants | |
---|---|
int |
ACTION_BUTTON_PRESS
Constant for |
int |
ACTION_BUTTON_RELEASE
Constant for |
int |
ACTION_CANCEL
Constant for |
int |
ACTION_DOWN
Constant for |
int |
ACTION_HOVER_ENTER
Constant for |
int |
ACTION_HOVER_EXIT
Constant for |
int |
ACTION_HOVER_MOVE
Constant for |
int |
ACTION_MASK
Bit mask of the parts of the action code that are the action itself. |
int |
ACTION_MOVE
Constant for |
int |
ACTION_OUTSIDE
Constant for |
int |
ACTION_POINTER_1_DOWN
This constant is deprecated.
Use |
int |
ACTION_POINTER_1_UP
This constant is deprecated.
Use |
int |
ACTION_POINTER_2_DOWN
This constant is deprecated.
Use |
int |
ACTION_POINTER_2_UP
This constant is deprecated.
Use |
int |
ACTION_POINTER_3_DOWN
This constant is deprecated.
Use |
int |
ACTION_POINTER_3_UP
This constant is deprecated.
Use |
int |
ACTION_POINTER_DOWN
Constant for |
int |
ACTION_POINTER_ID_MASK
This constant is deprecated.
Renamed to |
int |
ACTION_POINTER_ID_SHIFT
This constant is deprecated.
Renamed to |
int |
ACTION_POINTER_INDEX_MASK
Bits in the action code that represent a pointer index, used with
|
int |
ACTION_POINTER_INDEX_SHIFT
Bit shift for the action bits holding the pointer index as
defined by |
int |
ACTION_POINTER_UP
Constant for |
int |
ACTION_SCROLL
Constant for |
int |
ACTION_UP
Constant for |
int |
AXIS_BRAKE
Axis constant: Brake axis of a motion event. |
int |
AXIS_DISTANCE
Axis constant: Distance axis of a motion event. |
int |
AXIS_GAS
Axis constant: Gas axis of a motion event. |
int |
AXIS_GENERIC_1
Axis constant: Generic 1 axis of a motion event. |
int |
AXIS_GENERIC_10
Axis constant: Generic 10 axis of a motion event. |
int |
AXIS_GENERIC_11
Axis constant: Generic 11 axis of a motion event. |
int |
AXIS_GENERIC_12
Axis constant: Generic 12 axis of a motion event. |
int |
AXIS_GENERIC_13
Axis constant: Generic 13 axis of a motion event. |
int |
AXIS_GENERIC_14
Axis constant: Generic 14 axis of a motion event. |
int |
AXIS_GENERIC_15
Axis constant: Generic 15 axis of a motion event. |
int |
AXIS_GENERIC_16
Axis constant: Generic 16 axis of a motion event. |
int |
AXIS_GENERIC_2
Axis constant: Generic 2 axis of a motion event. |
int |
AXIS_GENERIC_3
Axis constant: Generic 3 axis of a motion event. |
int |
AXIS_GENERIC_4
Axis constant: Generic 4 axis of a motion event. |
int |
AXIS_GENERIC_5
Axis constant: Generic 5 axis of a motion event. |
int |
AXIS_GENERIC_6
Axis constant: Generic 6 axis of a motion event. |
int |
AXIS_GENERIC_7
Axis constant: Generic 7 axis of a motion event. |
int |
AXIS_GENERIC_8
Axis constant: Generic 8 axis of a motion event. |
int |
AXIS_GENERIC_9
Axis constant: Generic 9 axis of a motion event. |
int |
AXIS_HAT_X
Axis constant: Hat X axis of a motion event. |
int |
AXIS_HAT_Y
Axis constant: Hat Y axis of a motion event. |
int |
AXIS_HSCROLL
Axis constant: Horizontal Scroll axis of a motion event. |
int |
AXIS_LTRIGGER
Axis constant: Left Trigger axis of a motion event. |
int |
AXIS_ORIENTATION
Axis constant: Orientation axis of a motion event. |
int |
AXIS_PRESSURE
Axis constant: Pressure axis of a motion event. |
int |
AXIS_RELATIVE_X
Axis constant: The movement of x position of a motion event. |
int |
AXIS_RELATIVE_Y
Axis constant: The movement of y position of a motion event. |
int |
AXIS_RTRIGGER
Axis constant: Right Trigger axis of a motion event. |
int |
AXIS_RUDDER
Axis constant: Rudder axis of a motion event. |
int |
AXIS_RX
Axis constant: X Rotation axis of a motion event. |
int |
AXIS_RY
Axis constant: Y Rotation axis of a motion event. |
int |
AXIS_RZ
Axis constant: Z Rotation axis of a motion event. |
int |
AXIS_SCROLL
Axis constant: Generic scroll axis of a motion event. |
int |
AXIS_SIZE
Axis constant: Size axis of a motion event. |
int |
AXIS_THROTTLE
Axis constant: Throttle axis of a motion event. |
int |
AXIS_TILT
Axis constant: Tilt axis of a motion event. |
int |
AXIS_TOOL_MAJOR
Axis constant: ToolMajor axis of a motion event. |
int |
AXIS_TOOL_MINOR
Axis constant: ToolMinor axis of a motion event. |
int |
AXIS_TOUCH_MAJOR
Axis constant: TouchMajor axis of a motion event. |
int |
AXIS_TOUCH_MINOR
Axis constant: TouchMinor axis of a motion event. |
int |
AXIS_VSCROLL
Axis constant: Vertical Scroll axis of a motion event. |
int |
AXIS_WHEEL
Axis constant: Wheel axis of a motion event. |
int |
AXIS_X
Axis constant: X axis of a motion event. |
int |
AXIS_Y
Axis constant: Y axis of a motion event. |
int |
AXIS_Z
Axis constant: Z axis of a motion event. |
int |
BUTTON_BACK
Button constant: Back button pressed (mouse back button). |
int |
BUTTON_FORWARD
Button constant: Forward button pressed (mouse forward button). |
int |
BUTTON_PRIMARY
Button constant: Primary button (left mouse button). |
int |
BUTTON_SECONDARY
Button constant: Secondary button (right mouse button). |
int |
BUTTON_STYLUS_PRIMARY
Button constant: Primary stylus button pressed. |
int |
BUTTON_STYLUS_SECONDARY
Button constant: Secondary stylus button pressed. |
int |
BUTTON_TERTIARY
Button constant: Tertiary button (middle mouse button). |
int |
CLASSIFICATION_AMBIGUOUS_GESTURE
Classification constant: Ambiguous gesture. |
int |
CLASSIFICATION_DEEP_PRESS
Classification constant: Deep press. |
int |
CLASSIFICATION_NONE
Classification constant: None. |
int |
EDGE_BOTTOM
Flag indicating the motion event intersected the bottom edge of the screen. |
int |
EDGE_LEFT
Flag indicating the motion event intersected the left edge of the screen. |
int |
EDGE_RIGHT
Flag indicating the motion event intersected the right edge of the screen. |
int |
EDGE_TOP
Flag indicating the motion event intersected the top edge of the screen. |
int |
FLAG_WINDOW_IS_OBSCURED
This flag indicates that the window that received this motion event is partly or wholly obscured by another visible window above it. |
int |
FLAG_WINDOW_IS_PARTIALLY_OBSCURED
This flag indicates that the window that received this motion event is partly or wholly obscured by another visible window above it. |
int |
INVALID_POINTER_ID
An invalid pointer id. |
int |
TOOL_TYPE_ERASER
Tool type constant: The tool is an eraser or a stylus being used in an inverted posture. |
int |
TOOL_TYPE_FINGER
Tool type constant: The tool is a finger. |
int |
TOOL_TYPE_MOUSE
Tool type constant: The tool is a mouse. |
int |
TOOL_TYPE_STYLUS
Tool type constant: The tool is a stylus. |
int |
TOOL_TYPE_UNKNOWN
Tool type constant: Unknown tool type. |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<MotionEvent> |
CREATOR
|
Inherited fields |
---|
Public methods | |
---|---|
static
String
|
actionToString(int action)
Returns a string that represents the symbolic name of the specified unmasked action such as "ACTION_DOWN", "ACTION_POINTER_DOWN(3)" or an equivalent numeric constant such as "35" if unknown. |
void
|
addBatch(long eventTime, PointerCoords[] pointerCoords, int metaState)
Add a new movement to the batch of movements in this event. |
void
|
addBatch(long eventTime, float x, float y, float pressure, float size, int metaState)
Add a new movement to the batch of movements in this event. |
static
int
|
axisFromString(String symbolicName)
Gets an axis by its symbolic name such as "AXIS_X" or an equivalent numeric constant such as "42". |
static
String
|
axisToString(int axis)
Returns a string that represents the symbolic name of the specified axis such as "AXIS_X" or an equivalent numeric constant such as "42" if unknown. |
int
|
findPointerIndex(int pointerId)
Given a pointer identifier, find the index of its data in the event. |
int
|
getAction()
Return the kind of action being performed. |
int
|
getActionButton()
Gets which button has been modified during a press or release action. |
int
|
getActionIndex()
For |
int
|
getActionMasked()
Return the masked action being performed, without pointer index information. |
float
|
getAxisValue(int axis, int pointerIndex)
Returns the value of the requested axis for the given pointer index
(use |
float
|
getAxisValue(int axis)
|
int
|
getButtonState()
Gets the state of all buttons that are pressed such as a mouse or stylus button. |
int
|
getClassification()
Returns the classification for the current gesture. |
int
|
getDeviceId()
Gets the id for the device that this event came from. |
long
|
getDownTime()
Returns the time (in ms) when the user originally pressed down to start a stream of position events. |
int
|
getEdgeFlags()
Returns a bitfield indicating which edges, if any, were touched by this MotionEvent. |
long
|
getEventTime()
Retrieve the time this event occurred,
in the |
int
|
getFlags()
Gets the motion event flags. |
float
|
getHistoricalAxisValue(int axis, int pointerIndex, int pos)
Returns the historical value of the requested axis, as per |
float
|
getHistoricalAxisValue(int axis, int pos)
|
long
|
getHistoricalEventTime(int pos)
Returns the time that a historical movement occurred between this event
and the previous event, in the |
float
|
getHistoricalOrientation(int pointerIndex, int pos)
Returns a historical orientation coordinate, as per |
float
|
getHistoricalOrientation(int pos)
|
void
|
getHistoricalPointerCoords(int pointerIndex, int pos, MotionEvent.PointerCoords outPointerCoords)
Populates a |
float
|
getHistoricalPressure(int pointerIndex, int pos)
Returns a historical pressure coordinate, as per |
float
|
getHistoricalPressure(int pos)
|
float
|
getHistoricalSize(int pos)
|
float
|
getHistoricalSize(int pointerIndex, int pos)
Returns a historical size coordinate, as per |
float
|
getHistoricalToolMajor(int pos)
|
float
|
getHistoricalToolMajor(int pointerIndex, int pos)
Returns a historical tool major axis coordinate, as per |
float
|
getHistoricalToolMinor(int pos)
|
float
|
getHistoricalToolMinor(int pointerIndex, int pos)
Returns a historical tool minor axis coordinate, as per |
float
|
getHistoricalTouchMajor(int pos)
|
float
|
getHistoricalTouchMajor(int pointerIndex, int pos)
Returns a historical touch major axis coordinate, as per |
float
|
getHistoricalTouchMinor(int pointerIndex, int pos)
Returns a historical touch minor axis coordinate, as per |
float
|
getHistoricalTouchMinor(int pos)
|
float
|
getHistoricalX(int pos)
|
float
|
getHistoricalX(int pointerIndex, int pos)
Returns a historical X coordinate, as per |
float
|
getHistoricalY(int pos)
|
float
|
getHistoricalY(int pointerIndex, int pos)
Returns a historical Y coordinate, as per |
int
|
getHistorySize()
Returns the number of historical points in this event. |
int
|
getMetaState()
Returns the state of any meta / modifier keys that were in effect when the event was generated. |
float
|
getOrientation()
|
float
|
getOrientation(int pointerIndex)
Returns the orientation of the touch area and tool area in radians clockwise from vertical
for the given pointer index (use |
void
|
getPointerCoords(int pointerIndex, MotionEvent.PointerCoords outPointerCoords)
Populates a |
int
|
getPointerCount()
The number of pointers of data contained in this event. |
int
|
getPointerId(int pointerIndex)
Return the pointer identifier associated with a particular pointer data index in this event. |
void
|
getPointerProperties(int pointerIndex, MotionEvent.PointerProperties outPointerProperties)
Populates a |
float
|
getPressure(int pointerIndex)
Returns the current pressure of this event for the given pointer
index (use |
float
|
getPressure()
|
float
|
getRawX()
Returns the original raw X coordinate of this event. |
float
|
getRawX(int pointerIndex)
Returns the original raw X coordinate of this event. |
float
|
getRawY()
Returns the original raw Y coordinate of this event. |
float
|
getRawY(int pointerIndex)
Returns the original raw Y coordinate of this event. |
float
|
getSize(int pointerIndex)
Returns a scaled value of the approximate size for the given pointer
index (use |
float
|
getSize()
|
int
|
getSource()
Gets the source of the event. |
float
|
getToolMajor(int pointerIndex)
Returns the length of the major axis of an ellipse that describes the size of
the approaching tool for the given pointer
index (use |
float
|
getToolMajor()
|
float
|
getToolMinor()
|
float
|
getToolMinor(int pointerIndex)
Returns the length of the minor axis of an ellipse that describes the size of
the approaching tool for the given pointer
index (use |
int
|
getToolType(int pointerIndex)
Gets the tool type of a pointer for the given pointer index. |
float
|
getTouchMajor()
|
float
|
getTouchMajor(int pointerIndex)
Returns the length of the major axis of an ellipse that describes the touch
area at the point of contact for the given pointer
index (use |
float
|
getTouchMinor(int pointerIndex)
Returns the length of the minor axis of an ellipse that describes the touch
area at the point of contact for the given pointer
index (use |
float
|
getTouchMinor()
|
float
|
getX(int pointerIndex)
Returns the X coordinate of this event for the given pointer
index (use |
float
|
getX()
|
float
|
getXPrecision()
Return the precision of the X coordinates being reported. |
float
|
getY()
|
float
|
getY(int pointerIndex)
Returns the Y coordinate of this event for the given pointer
index (use |
float
|
getYPrecision()
Return the precision of the Y coordinates being reported. |
boolean
|
isButtonPressed(int button)
Checks if a mouse or stylus button (or combination of buttons) is pressed. |
static
MotionEvent
|
obtain(long downTime, long eventTime, int action, float x, float y, int metaState)
Create a new MotionEvent, filling in a subset of the basic motion values. |
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)
This method is deprecated.
Use |
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)
This method is deprecated.
Use |
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)
Create a new MotionEvent, filling in all of the basic values that define the motion. |
static
MotionEvent
|
obtain(MotionEvent other)
Create a new MotionEvent, copying from an existing one. |
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)
Create a new MotionEvent, filling in all of the basic values that define the motion. |
static
MotionEvent
|
obtainNoHistory(MotionEvent other)
Create a new MotionEvent, copying from an existing one, but not including any historical point information. |
void
|
offsetLocation(float deltaX, float deltaY)
Adjust this event's location. |
void
|
recycle()
Recycle the MotionEvent, to be re-used by a later caller. |
void
|
setAction(int action)
Sets this event's action. |
void
|
setEdgeFlags(int flags)
Sets the bitfield indicating which edges, if any, were touched by this MotionEvent. |
void
|
setLocation(float x, float y)
Set this event's location. |
void
|
setSource(int source)
|
String
|
toString()
Returns a string representation of the object. |
void
|
transform(Matrix matrix)
Applies a transformation matrix to all of the points in the event. |
void
|
writeToParcel(Parcel out, int flags)
Flatten this object in to a Parcel. |
Protected methods | |
---|---|
void
|
finalize()
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. |
Inherited methods | |
---|---|
public static final int ACTION_BUTTON_PRESS
Constant for getActionMasked()
: A button has been pressed.
Use getActionButton()
to get which button was pressed.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 11 (0x0000000b)
public static final int ACTION_BUTTON_RELEASE
Constant for getActionMasked()
: A button has been released.
Use getActionButton()
to get which button was released.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 12 (0x0000000c)
public static final int ACTION_CANCEL
Constant for getActionMasked()
: The current gesture has been aborted.
You will not receive any more points in it. You should treat this as
an up event, but not perform any action that you normally would.
Constant Value: 3 (0x00000003)
public static final int ACTION_DOWN
Constant for getActionMasked()
: A pressed gesture has started, the
motion contains the initial starting location.
This is also a good time to check the button state to distinguish
secondary and tertiary button clicks and handle them appropriately.
Use getButtonState()
to retrieve the button state.
Constant Value: 0 (0x00000000)
public static final int ACTION_HOVER_ENTER
Constant for getActionMasked()
: The pointer is not down but has entered the
boundaries of a window or view.
This action is always delivered to the window or view under the pointer.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 9 (0x00000009)
public static final int ACTION_HOVER_EXIT
Constant for getActionMasked()
: The pointer is not down but has exited the
boundaries of a window or view.
This action is always delivered to the window or view that was previously under the pointer.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 10 (0x0000000a)
public static final int ACTION_HOVER_MOVE
Constant for getActionMasked()
: A change happened but the pointer
is not down (unlike ACTION_MOVE
). The motion contains the most
recent point, as well as any intermediate points since the last
hover move event.
This action is always delivered to the window or view under the pointer.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 7 (0x00000007)
public static final int ACTION_MASK
Bit mask of the parts of the action code that are the action itself.
Constant Value: 255 (0x000000ff)
public static final int ACTION_MOVE
Constant for getActionMasked()
: A change has happened during a
press gesture (between ACTION_DOWN
and ACTION_UP
).
The motion contains the most recent point, as well as any intermediate
points since the last down or move event.
Constant Value: 2 (0x00000002)
public static final int ACTION_OUTSIDE
Constant for getActionMasked()
: A movement has happened outside of the
normal bounds of the UI element. This does not provide a full gesture,
but only the initial location of the movement/touch.
Note: Because the location of any event will be outside the
bounds of the view hierarchy, it will not get dispatched to
any children of a ViewGroup by default. Therefore,
movements with ACTION_OUTSIDE should be handled in either the
root View
or in the appropriate Window.Callback
(e.g. Activity
or Dialog
).
Constant Value: 4 (0x00000004)
public static final int ACTION_POINTER_1_DOWN
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_DOWN
.
Constant Value: 5 (0x00000005)
public static final int ACTION_POINTER_1_UP
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_UP
.
Constant Value: 6 (0x00000006)
public static final int ACTION_POINTER_2_DOWN
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_DOWN
.
Constant Value: 261 (0x00000105)
public static final int ACTION_POINTER_2_UP
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_UP
.
Constant Value: 262 (0x00000106)
public static final int ACTION_POINTER_3_DOWN
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_DOWN
.
Constant Value: 517 (0x00000205)
public static final int ACTION_POINTER_3_UP
This constant is deprecated.
Use ACTION_POINTER_INDEX_MASK
to retrieve the
data index associated with ACTION_POINTER_UP
.
Constant Value: 518 (0x00000206)
public static final int ACTION_POINTER_DOWN
Constant for getActionMasked()
: A non-primary pointer has gone down.
Use getActionIndex()
to retrieve the index of the pointer that changed.
The index is encoded in the ACTION_POINTER_INDEX_MASK
bits of the
unmasked action returned by getAction()
.
Constant Value: 5 (0x00000005)
public static final int ACTION_POINTER_ID_MASK
This constant is deprecated.
Renamed to ACTION_POINTER_INDEX_MASK
to match
the actual data contained in these bits.
Constant Value: 65280 (0x0000ff00)
public static final int ACTION_POINTER_ID_SHIFT
This constant is deprecated.
Renamed to ACTION_POINTER_INDEX_SHIFT
to match
the actual data contained in these bits.
Constant Value: 8 (0x00000008)
public static final int ACTION_POINTER_INDEX_MASK
Bits in the action code that represent a pointer index, used with
ACTION_POINTER_DOWN
and ACTION_POINTER_UP
. Shifting
down by ACTION_POINTER_INDEX_SHIFT
provides the actual pointer
index where the data for the pointer going up or down can be found; you can
get its identifier with getPointerId(int)
and the actual
data with getX(int)
etc.
See also:
Constant Value: 65280 (0x0000ff00)
public static final int ACTION_POINTER_INDEX_SHIFT
Bit shift for the action bits holding the pointer index as
defined by ACTION_POINTER_INDEX_MASK
.
See also:
Constant Value: 8 (0x00000008)
public static final int ACTION_POINTER_UP
Constant for getActionMasked()
: A non-primary pointer has gone up.
Use getActionIndex()
to retrieve the index of the pointer that changed.
The index is encoded in the ACTION_POINTER_INDEX_MASK
bits of the
unmasked action returned by getAction()
.
Constant Value: 6 (0x00000006)
public static final int ACTION_SCROLL
Constant for getActionMasked()
: The motion event contains relative
vertical and/or horizontal scroll offsets. Use getAxisValue(int)
to retrieve the information from AXIS_VSCROLL
and AXIS_HSCROLL
.
The pointer may or may not be down when this event is dispatched.
This action is always delivered to the window or view under the pointer, which may not be the window or view currently touched.
This action is not a touch event so it is delivered to
View#onGenericMotionEvent(MotionEvent)
rather than
View#onTouchEvent(MotionEvent)
.
Constant Value: 8 (0x00000008)
public static final int ACTION_UP
Constant for getActionMasked()
: A pressed gesture has finished, the
motion contains the final release location as well as any intermediate
points since the last down or move event.
Constant Value: 1 (0x00000001)
public static final int AXIS_BRAKE
Axis constant: Brake axis of a motion event.
See also:
Constant Value: 23 (0x00000017)
public static final int AXIS_DISTANCE
Axis constant: Distance axis of a motion event.
See also:
Constant Value: 24 (0x00000018)
public static final int AXIS_GAS
Axis constant: Gas axis of a motion event.
See also:
Constant Value: 22 (0x00000016)
public static final int AXIS_GENERIC_1
Axis constant: Generic 1 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 32 (0x00000020)
public static final int AXIS_GENERIC_10
Axis constant: Generic 10 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 41 (0x00000029)
public static final int AXIS_GENERIC_11
Axis constant: Generic 11 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 42 (0x0000002a)
public static final int AXIS_GENERIC_12
Axis constant: Generic 12 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 43 (0x0000002b)
public static final int AXIS_GENERIC_13
Axis constant: Generic 13 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 44 (0x0000002c)
public static final int AXIS_GENERIC_14
Axis constant: Generic 14 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 45 (0x0000002d)
public static final int AXIS_GENERIC_15
Axis constant: Generic 15 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 46 (0x0000002e)
public static final int AXIS_GENERIC_16
Axis constant: Generic 16 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 47 (0x0000002f)
public static final int AXIS_GENERIC_2
Axis constant: Generic 2 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 33 (0x00000021)
public static final int AXIS_GENERIC_3
Axis constant: Generic 3 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 34 (0x00000022)
public static final int AXIS_GENERIC_4
Axis constant: Generic 4 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 35 (0x00000023)
public static final int AXIS_GENERIC_5
Axis constant: Generic 5 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 36 (0x00000024)
public static final int AXIS_GENERIC_6
Axis constant: Generic 6 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 37 (0x00000025)
public static final int AXIS_GENERIC_7
Axis constant: Generic 7 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 38 (0x00000026)
public static final int AXIS_GENERIC_8
Axis constant: Generic 8 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 39 (0x00000027)
public static final int AXIS_GENERIC_9
Axis constant: Generic 9 axis of a motion event. The interpretation of a generic axis is device-specific.
See also:
Constant Value: 40 (0x00000028)
public static final int AXIS_HAT_X
Axis constant: Hat X axis of a motion event.
See also:
Constant Value: 15 (0x0000000f)
public static final int AXIS_HAT_Y
Axis constant: Hat Y axis of a motion event.
See also:
Constant Value: 16 (0x00000010)
public static final int AXIS_HSCROLL
Axis constant: Horizontal Scroll axis of a motion event.
This axis should be used to scroll views horizontally.
See also:
Constant Value: 10 (0x0000000a)
public static final int AXIS_LTRIGGER
Axis constant: Left Trigger axis of a motion event.
See also:
Constant Value: 17 (0x00000011)
public static final int AXIS_ORIENTATION
Axis constant: Orientation axis of a motion event.
AXIS_TILT
.
See also:
Constant Value: 8 (0x00000008)
public static final int AXIS_PRESSURE
Axis constant: Pressure axis of a motion event.
See also:
Constant Value: 2 (0x00000002)
public static final int AXIS_RELATIVE_X
Axis constant: The movement of x position of a motion event.
See also:
Constant Value: 27 (0x0000001b)
public static final int AXIS_RELATIVE_Y
Axis constant: The movement of y position of a motion event.
This is similar to AXIS_RELATIVE_X
but for y-axis.
See also:
Constant Value: 28 (0x0000001c)
public static final int AXIS_RTRIGGER
Axis constant: Right Trigger axis of a motion event.
See also:
Constant Value: 18 (0x00000012)
public static final int AXIS_RUDDER
Axis constant: Rudder axis of a motion event.
See also:
Constant Value: 20 (0x00000014)
public static final int AXIS_RX
Axis constant: X Rotation axis of a motion event.
See also:
Constant Value: 12 (0x0000000c)
public static final int AXIS_RY
Axis constant: Y Rotation axis of a motion event.
See also:
Constant Value: 13 (0x0000000d)
public static final int AXIS_RZ
Axis constant: Z Rotation axis of a motion event.
See also:
Constant Value: 14 (0x0000000e)
public static final int AXIS_SCROLL
Axis constant: Generic scroll axis of a motion event.
This axis should be used for scroll events that are neither strictly vertical nor horizontal. A good example would be the rotation of a rotary encoder input device.
See also:
Constant Value: 26 (0x0000001a)
public static final int AXIS_SIZE
Axis constant: Size axis of a motion event.
AXIS_TOUCH_MAJOR
or AXIS_TOOL_MAJOR
.
See also:
Constant Value: 3 (0x00000003)
public static final int AXIS_THROTTLE
Axis constant: Throttle axis of a motion event.
See also:
Constant Value: 19 (0x00000013)
public static final int AXIS_TILT
Axis constant: Tilt axis of a motion event.
See also:
Constant Value: 25 (0x00000019)
public static final int AXIS_TOOL_MAJOR
Axis constant: ToolMajor axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
When the touch is circular, the major and minor axis lengths will be equal to one another.
The tool size may be larger than the touch size since the tool may not be fully in contact with the touch sensor.
See also:
Constant Value: 6 (0x00000006)
public static final int AXIS_TOOL_MINOR
Axis constant: ToolMinor axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
When the touch is circular, the major and minor axis lengths will be equal to one another.
The tool size may be larger than the touch size since the tool may not be fully in contact with the touch sensor.
See also:
Constant Value: 7 (0x00000007)
public static final int AXIS_TOUCH_MAJOR
Axis constant: TouchMajor axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
See also:
Constant Value: 4 (0x00000004)
public static final int AXIS_TOUCH_MINOR
Axis constant: TouchMinor axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
When the touch is circular, the major and minor axis lengths will be equal to one another.
See also:
Constant Value: 5 (0x00000005)
public static final int AXIS_VSCROLL
Axis constant: Vertical Scroll axis of a motion event.
This axis should be used to scroll views vertically.
See also:
Constant Value: 9 (0x00000009)
public static final int AXIS_WHEEL
Axis constant: Wheel axis of a motion event.
See also:
Constant Value: 21 (0x00000015)
public static final int AXIS_X
Axis constant: X axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
See also:
Constant Value: 0 (0x00000000)
public static final int AXIS_Y
Axis constant: Y axis of a motion event.
InputDevice#getMotionRange(int)
to query the effective range of values.
See also:
Constant Value: 1 (0x00000001)
public static final int AXIS_Z
Axis constant: Z axis of a motion event.
See also:
Constant Value: 11 (0x0000000b)
public static final int BUTTON_BACK
Button constant: Back button pressed (mouse back button).
The system may send a KeyEvent#KEYCODE_BACK
key press to the application
when this button is pressed.
See also:
Constant Value: 8 (0x00000008)
public static final int BUTTON_FORWARD
Button constant: Forward button pressed (mouse forward button).
The system may send a KeyEvent#KEYCODE_FORWARD
key press to the application
when this button is pressed.
See also:
Constant Value: 16 (0x00000010)
public static final int BUTTON_PRIMARY
Button constant: Primary button (left mouse button). This button constant is not set in response to simple touches with a finger or stylus tip. The user must actually push a button.
See also:
Constant Value: 1 (0x00000001)
public static final int BUTTON_SECONDARY
Button constant: Secondary button (right mouse button).
See also:
Constant Value: 2 (0x00000002)
public static final int BUTTON_STYLUS_PRIMARY
Button constant: Primary stylus button pressed.
See also:
Constant Value: 32 (0x00000020)
public static final int BUTTON_STYLUS_SECONDARY
Button constant: Secondary stylus button pressed.
See also:
Constant Value: 64 (0x00000040)
public static final int BUTTON_TERTIARY
Button constant: Tertiary button (middle mouse button).
See also:
Constant Value: 4 (0x00000004)
public static final int CLASSIFICATION_AMBIGUOUS_GESTURE
Classification constant: Ambiguous gesture. The user's intent with respect to the current event stream is not yet determined. Gestural actions, such as scrolling, should be inhibited until the classification resolves to another value or the event stream ends.
See also:
Constant Value: 1 (0x00000001)
public static final int CLASSIFICATION_DEEP_PRESS
Classification constant: Deep press. The current event stream represents the user intentionally pressing harder on the screen. This classification type should be used to accelerate the long press behaviour.
See also:
Constant Value: 2 (0x00000002)
public static final int CLASSIFICATION_NONE
Classification constant: None. No additional information is available about the current motion event stream.
See also:
Constant Value: 0 (0x00000000)
public static final int EDGE_BOTTOM
Flag indicating the motion event intersected the bottom edge of the screen.
Constant Value: 2 (0x00000002)
public static final int EDGE_LEFT
Flag indicating the motion event intersected the left edge of the screen.
Constant Value: 4 (0x00000004)
public static final int EDGE_RIGHT
Flag indicating the motion event intersected the right edge of the screen.
Constant Value: 8 (0x00000008)
public static final int EDGE_TOP
Flag indicating the motion event intersected the top edge of the screen.
Constant Value: 1 (0x00000001)
public static final int FLAG_WINDOW_IS_OBSCURED
This flag indicates that the window that received this motion event is partly or wholly obscured by another visible window above it. This flag is set to true if the event directly passed through the obscured area. A security sensitive application can check this flag to identify situations in which a malicious application may have covered up part of its content for the purpose of misleading the user or hijacking touches. An appropriate response might be to drop the suspect touches or to take additional precautions to confirm the user's actual intent.
Constant Value: 1 (0x00000001)
public static final int FLAG_WINDOW_IS_PARTIALLY_OBSCURED
This flag indicates that the window that received this motion event is partly or wholly obscured by another visible window above it. This flag is set to true even if the event did not directly pass through the obscured area. A security sensitive application can check this flag to identify situations in which a malicious application may have covered up part of its content for the purpose of misleading the user or hijacking touches. An appropriate response might be to drop the suspect touches or to take additional precautions to confirm the user's actual intent. Unlike FLAG_WINDOW_IS_OBSCURED, this is true even if the window that received this event is obstructed in areas other than the touched location.
Constant Value: 2 (0x00000002)
public static final int INVALID_POINTER_ID
An invalid pointer id.
This value (-1) can be used as a placeholder to indicate that a pointer id
has not been assigned or is not available. It cannot appear as
a pointer id inside a MotionEvent
.
Constant Value: -1 (0xffffffff)
public static final int TOOL_TYPE_ERASER
Tool type constant: The tool is an eraser or a stylus being used in an inverted posture.
See also:
Constant Value: 4 (0x00000004)
public static final int TOOL_TYPE_FINGER
Tool type constant: The tool is a finger.
See also:
Constant Value: 1 (0x00000001)
public static final int TOOL_TYPE_MOUSE
Tool type constant: The tool is a mouse.
See also:
Constant Value: 3 (0x00000003)
public static final int TOOL_TYPE_STYLUS
Tool type constant: The tool is a stylus.
See also:
Constant Value: 2 (0x00000002)
public static final int TOOL_TYPE_UNKNOWN
Tool type constant: Unknown tool type. This constant is used when the tool type is not known or is not relevant, such as for a trackball or other non-pointing device.
See also:
Constant Value: 0 (0x00000000)
public static String actionToString (int action)
Returns a string that represents the symbolic name of the specified unmasked action such as "ACTION_DOWN", "ACTION_POINTER_DOWN(3)" or an equivalent numeric constant such as "35" if unknown.
Parameters | |
---|---|
action |
int : The unmasked action. |
Returns | |
---|---|
String |
The symbolic name of the specified action. |
See also:
public void addBatch (long eventTime, PointerCoords[] pointerCoords, int metaState)
Add a new movement to the batch of movements in this event. The event's
current location, position and size is updated to the new values.
The current values in the event are added to a list of historical values.
Only applies to ACTION_MOVE
or ACTION_HOVER_MOVE
events.
Parameters | |
---|---|
eventTime |
long : The time stamp (in ms) for this data. |
pointerCoords |
PointerCoords : The new pointer coordinates. |
metaState |
int : Meta key state. |
public void addBatch (long eventTime, float x, float y, float pressure, float size, int metaState)
Add a new movement to the batch of movements in this event. The event's
current location, position and size is updated to the new values.
The current values in the event are added to a list of historical values.
Only applies to ACTION_MOVE
or ACTION_HOVER_MOVE
events.
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. |
public static int axisFromString (String symbolicName)
Gets an axis by its symbolic name such as "AXIS_X" or an equivalent numeric constant such as "42".
Parameters | |
---|---|
symbolicName |
String : The symbolic name of the axis. |
Returns | |
---|---|
int |
The axis or -1 if not found. |
See also:
public static String axisToString (int axis)
Returns a string that represents the symbolic name of the specified axis such as "AXIS_X" or an equivalent numeric constant such as "42" if unknown.
Parameters | |
---|---|
axis |
int : The axis. |
Returns | |
---|---|
String |
The symbolic name of the specified axis. |
public int findPointerIndex (int pointerId)
Given a pointer identifier, find the index of its data in the event.
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. |
public int getAction ()
Return the kind of action being performed.
Consider using getActionMasked()
and getActionIndex()
to retrieve
the separate masked action and pointer index.
Returns | |
---|---|
int |
The action, such as ACTION_DOWN or
the combination of ACTION_POINTER_DOWN with a shifted pointer index. |
public int getActionButton ()
Gets which button has been modified during a press or release action.
For actions other than ACTION_BUTTON_PRESS
and ACTION_BUTTON_RELEASE
the returned value is undefined.
Returns | |
---|---|
int |
See also:
public int getActionIndex ()
For ACTION_POINTER_DOWN
or ACTION_POINTER_UP
as returned by getActionMasked()
, this returns the associated
pointer index.
The index may be used with getPointerId(int)
,
getX(int)
, getY(int)
, getPressure(int)
,
and getSize(int)
to get information about the pointer that has
gone down or up.
Returns | |
---|---|
int |
The index associated with the action. |
public int getActionMasked ()
Return the masked action being performed, without pointer index information.
Use getActionIndex()
to return the index associated with pointer actions.
Returns | |
---|---|
int |
The action, such as ACTION_DOWN or ACTION_POINTER_DOWN . |
public float getAxisValue (int axis, int pointerIndex)
Returns the value of the requested axis for the given pointer index
(use getPointerId(int)
to find the pointer identifier for this index).
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. |
public float getAxisValue (int axis)
getAxisValue(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
axis |
int : The axis identifier for the axis value to retrieve. |
Returns | |
---|---|
float |
public int getButtonState ()
Gets the state of all buttons that are pressed such as a mouse or stylus button.
Returns | |
---|---|
int |
The button state. |
public int getClassification ()
Returns the classification for the current gesture. The classification may change as more events become available for the same gesture.
Returns | |
---|---|
int |
Value is CLASSIFICATION_NONE , CLASSIFICATION_AMBIGUOUS_GESTURE , or CLASSIFICATION_DEEP_PRESS |
public int getDeviceId ()
Gets 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 and maps to the default keymap. The other numbers are arbitrary and you shouldn't depend on the values.
Returns | |
---|---|
int |
The device id. |
public long getDownTime ()
Returns the time (in ms) when the user originally pressed down to start a stream of position events.
Returns | |
---|---|
long |
public int getEdgeFlags ()
Returns a bitfield indicating which edges, if any, were touched by this
MotionEvent. For touch events, clients can use this to determine if the
user's finger was touching the edge of the display.
This property is only set for ACTION_DOWN
events.
Returns | |
---|---|
int |
See also:
public long getEventTime ()
Retrieve the time this event occurred,
in the SystemClock.uptimeMillis()
time base.
Returns | |
---|---|
long |
Returns the time this event occurred,
in the SystemClock.uptimeMillis() time base. |
public int getFlags ()
Gets the motion event flags.
Returns | |
---|---|
int |
See also:
public float getHistoricalAxisValue (int axis, int pointerIndex, int pos)
Returns the historical value of the requested axis, as per getAxisValue(int, int)
,
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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. |
public float getHistoricalAxisValue (int axis, int pos)
getHistoricalAxisValue(int, int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
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 |
public long getHistoricalEventTime (int pos)
Returns the time that a historical movement occurred between this event
and the previous event, in the SystemClock.uptimeMillis()
time base.
This only applies to ACTION_MOVE events.
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 SystemClock.uptimeMillis() time base. |
See also:
public float getHistoricalOrientation (int pointerIndex, int pos)
Returns a historical orientation coordinate, as per getOrientation(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
public float getHistoricalOrientation (int pos)
getHistoricalOrientation(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public void getHistoricalPointerCoords (int pointerIndex, int pos, MotionEvent.PointerCoords outPointerCoords)
Populates a PointerCoords
object with historical pointer coordinate data,
as per getPointerCoords(int, MotionEvent.PointerCoords)
, that occurred between this event and the previous
event for the given pointer.
Only applies to ACTION_MOVE events.
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. |
public float getHistoricalPressure (int pointerIndex, int pos)
Returns a historical pressure coordinate, as per getPressure(int)
,
that occurred between this event and the previous event for the given
pointer. Only applies to ACTION_MOVE events.
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 |
public float getHistoricalPressure (int pos)
getHistoricalPressure(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public float getHistoricalSize (int pos)
getHistoricalSize(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
See also:
public float getHistoricalSize (int pointerIndex, int pos)
Returns a historical size coordinate, as per getSize(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
See also:
public float getHistoricalToolMajor (int pos)
getHistoricalToolMajor(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public float getHistoricalToolMajor (int pointerIndex, int pos)
Returns a historical tool major axis coordinate, as per getToolMajor(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
public float getHistoricalToolMinor (int pos)
getHistoricalToolMinor(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public float getHistoricalToolMinor (int pointerIndex, int pos)
Returns a historical tool minor axis coordinate, as per getToolMinor(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
public float getHistoricalTouchMajor (int pos)
getHistoricalTouchMajor(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public float getHistoricalTouchMajor (int pointerIndex, int pos)
Returns a historical touch major axis coordinate, as per getTouchMajor(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
public float getHistoricalTouchMinor (int pointerIndex, int pos)
Returns a historical touch minor axis coordinate, as per getTouchMinor(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
public float getHistoricalTouchMinor (int pos)
getHistoricalTouchMinor(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
public float getHistoricalX (int pos)
getHistoricalX(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
See also:
public float getHistoricalX (int pointerIndex, int pos)
Returns a historical X coordinate, as per getX(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
See also:
public float getHistoricalY (int pos)
getHistoricalY(int, int)
for the first pointer index (may be an
arbitrary pointer identifier).
Parameters | |
---|---|
pos |
int : Which historical value to return; must be less than
getHistorySize() |
Returns | |
---|---|
float |
See also:
public float getHistoricalY (int pointerIndex, int pos)
Returns a historical Y coordinate, as per getY(int)
, that
occurred between this event and the previous event for the given pointer.
Only applies to ACTION_MOVE events.
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 |
See also:
public int getHistorySize ()
Returns the number of historical points in this event. These are movements that have occurred between this event and the previous event. This only applies to ACTION_MOVE events -- all other actions will have a size of 0.
Returns | |
---|---|
int |
Returns the number of historical points in the event. |
public int getMetaState ()
Returns the state of any meta / modifier keys that were in effect when
the event was generated. This is the same values as those
returned by KeyEvent#getMetaState()
.
Returns | |
---|---|
int |
an integer in which each bit set to 1 represents a pressed meta key |
See also:
public float getOrientation ()
getOrientation(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getOrientation (int pointerIndex)
Returns the orientation of the touch area and tool area in radians clockwise from vertical
for the given pointer index (use getPointerId(int)
to find the pointer
identifier for this index).
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).
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 |
See also:
public void getPointerCoords (int pointerIndex, MotionEvent.PointerCoords outPointerCoords)
Populates a PointerCoords
object with pointer coordinate data for
the specified pointer index.
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. |
See also:
public int getPointerCount ()
The number of pointers of data contained in this event. Always >= 1.
Returns | |
---|---|
int |
public int getPointerId (int pointerIndex)
Return the pointer identifier associated with a particular pointer data index in this event. The identifier tells you the actual pointer number associated with the data, accounting for individual pointers going up and down since the start of the current gesture.
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 |
public void getPointerProperties (int pointerIndex, MotionEvent.PointerProperties outPointerProperties)
Populates a PointerProperties
object with pointer properties for
the specified pointer index.
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. |
See also:
public float getPressure (int pointerIndex)
Returns the current pressure of this event for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
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.
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 |
See also:
public float getPressure ()
getPressure(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getRawX ()
Returns the original raw X coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.
Returns | |
---|---|
float |
public float getRawX (int pointerIndex)
Returns the original raw X coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.
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 |
public float getRawY ()
Returns the original raw Y coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.
Returns | |
---|---|
float |
public float getRawY (int pointerIndex)
Returns the original raw Y coordinate of this event. For touch events on the screen, this is the original location of the event on the screen, before it had been adjusted for the containing window and views.
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 |
public float getSize (int pointerIndex)
Returns a scaled value of the approximate size for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
This represents some approximation of the area of the screen being
pressed; the actual value in pixels corresponding to the
touch is normalized with the device specific range of values
and scaled to a value between 0 and 1. The value of size can be used to
determine fat touch events.
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 |
See also:
public float getSize ()
getSize(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public int getSource ()
Gets the source of the event.
Returns | |
---|---|
int |
The event source or InputDevice#SOURCE_UNKNOWN if unknown. |
public float getToolMajor (int pointerIndex)
Returns the length of the major axis of an ellipse that describes the size of
the approaching tool for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
The tool area represents the estimated size of the finger or pen that is
touching the device independent of its actual touch area at the point of contact.
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 |
See also:
public float getToolMajor ()
getToolMajor(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getToolMinor ()
getToolMinor(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getToolMinor (int pointerIndex)
Returns the length of the minor axis of an ellipse that describes the size of
the approaching tool for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
The tool area represents the estimated size of the finger or pen that is
touching the device independent of its actual touch area at the point of contact.
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 |
See also:
public int getToolType (int pointerIndex)
Gets the tool type of a pointer for the given pointer index. The tool type indicates the type of tool used to make contact such as a finger or stylus, if known.
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. |
public float getTouchMajor ()
getTouchMajor(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getTouchMajor (int pointerIndex)
Returns the length of the major axis of an ellipse that describes the touch
area at the point of contact for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
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 |
See also:
public float getTouchMinor (int pointerIndex)
Returns the length of the minor axis of an ellipse that describes the touch
area at the point of contact for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
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 |
See also:
public float getTouchMinor ()
getTouchMinor(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getX (int pointerIndex)
Returns the X coordinate of this event for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
Whole numbers are pixels; the
value may have a fraction for input devices that are sub-pixel precise.
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 |
See also:
public float getX ()
getX(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getXPrecision ()
Return the precision of the X coordinates being reported. You can
multiply this number with getX()
to find the actual hardware
value of the X coordinate.
Returns | |
---|---|
float |
Returns the precision of X coordinates being reported. |
See also:
public float getY ()
getY(int)
for the first pointer index (may be an
arbitrary pointer identifier).
Returns | |
---|---|
float |
See also:
public float getY (int pointerIndex)
Returns the Y coordinate of this event for the given pointer
index (use getPointerId(int)
to find the pointer
identifier for this index).
Whole numbers are pixels; the
value may have a fraction for input devices that are sub-pixel precise.
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 |
See also:
public float getYPrecision ()
Return the precision of the Y coordinates being reported. You can
multiply this number with getY()
to find the actual hardware
value of the Y coordinate.
Returns | |
---|---|
float |
Returns the precision of Y coordinates being reported. |
See also:
public boolean isButtonPressed (int button)
Checks if a mouse or stylus button (or combination of buttons) is pressed.
Parameters | |
---|---|
button |
int : Button (or combination of buttons). |
Returns | |
---|---|
boolean |
True if specified buttons are pressed. |
public static MotionEvent obtain (long downTime, long eventTime, int action, float x, float y, int metaState)
Create a new MotionEvent, filling in a subset of the basic motion values. Those not specified here are: device id (always 0), pressure and size (always 1), x and y precision (always 1), and edgeFlags (always 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 SystemClock#uptimeMillis() . |
eventTime |
long : The the time (in ms) when this specific event was generated. This
must be obtained from SystemClock#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 |
public 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)
This method is deprecated.
Use obtain(long, long, int, float, float, float, float, int, float, float, int, int)
instead.
Create a new MotionEvent, filling in all of the basic values that define the motion.
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 SystemClock#uptimeMillis() . |
eventTime |
long : The the time (in ms) when this specific event was generated. This
must be obtained from SystemClock#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 |
public 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)
This method is deprecated.
Use obtain(long, long, int, int, android.view.MotionEvent.PointerProperties[], android.view.MotionEvent.PointerCoords[], int, int, float, float, int, int, int, int)
instead.
Create a new MotionEvent, filling in all of the basic values that define the motion.
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 SystemClock#uptimeMillis() . |
eventTime |
long : The the time (in ms) when this specific event was generated. This
must be obtained from SystemClock#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 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 |
public 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)
Create a new MotionEvent, filling in all of the basic values that define the motion.
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 SystemClock#uptimeMillis() . |
eventTime |
long : The the time (in ms) when this specific event was generated. This
must be obtained from SystemClock#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 PointerProperties property object for each pointer, which must
include the pointer identifier. |
pointerCoords |
PointerCoords : An array of pointerCount values providing
a 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 |
public static MotionEvent obtain (MotionEvent other)
Create a new MotionEvent, copying from an existing one.
Parameters | |
---|---|
other |
MotionEvent |
Returns | |
---|---|
MotionEvent |
public 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)
Create a new MotionEvent, filling in all of the basic values that define the motion.
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 SystemClock#uptimeMillis() . |
eventTime |
long : The the time (in ms) when this specific event was generated. This
must be obtained from SystemClock#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 |
public static MotionEvent obtainNoHistory (MotionEvent other)
Create a new MotionEvent, copying from an existing one, but not including any historical point information.
Parameters | |
---|---|
other |
MotionEvent |
Returns | |
---|---|
MotionEvent |
public void offsetLocation (float deltaX, float deltaY)
Adjust this event's location.
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. |
public void recycle ()
Recycle the MotionEvent, to be re-used by a later caller. After calling this function you must not ever touch the event again.
public void setAction (int action)
Sets this event's action.
Parameters | |
---|---|
action |
int |
public void setEdgeFlags (int flags)
Sets the bitfield indicating which edges, if any, were touched by this MotionEvent.
Parameters | |
---|---|
flags |
int |
See also:
public void setLocation (float x, float y)
Set this event's location. Applies offsetLocation(float, float)
with a
delta from the current location to the given new location.
Parameters | |
---|---|
x |
float : New absolute X location. |
y |
float : New absolute Y location. |
public void setSource (int source)
Parameters | |
---|---|
source |
int |
public String toString ()
Returns a string representation of the object. In general, the
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Returns | |
---|---|
String |
a string representation of the object. |
public void transform (Matrix matrix)
Applies a transformation matrix to all of the points in the event.
Parameters | |
---|---|
matrix |
Matrix : The transformation matrix to apply. |
public void writeToParcel (Parcel out, int flags)
Flatten this object in to a Parcel.
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.PARCELABLE_WRITE_RETURN_VALUE .
Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |
protected void finalize ()
Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.
A subclass overrides the finalize
method to dispose of
system resources or to perform other cleanup.
The general contract of finalize
is that it is invoked
if and when the Java™ virtual
machine has determined that there is no longer any
means by which this object can be accessed by any thread that has
not yet died, except as a result of an action taken by the
finalization of some other object or class which is ready to be
finalized. The finalize
method may take any action, including
making this object available again to other threads; the usual purpose
of finalize
, however, is to perform cleanup actions before
the object is irrevocably discarded. For example, the finalize method
for an object that represents an input/output connection might perform
explicit I/O transactions to break the connection before the object is
permanently discarded.
The finalize
method of class Object
performs no
special action; it simply returns normally. Subclasses of
Object
may override this definition.
The Java programming language does not guarantee which thread will
invoke the finalize
method for any given object. It is
guaranteed, however, that the thread that invokes finalize will not
be holding any user-visible synchronization locks when finalize is
invoked. If an uncaught exception is thrown by the finalize method,
the exception is ignored and finalization of that object terminates.
After the finalize
method has been invoked for an object, no
further action is taken until the Java virtual machine has again
determined that there is no longer any means by which this object can
be accessed by any thread that has not yet died, including possible
actions by other objects or classes which are ready to be finalized,
at which point the object may be discarded.
The finalize
method is never invoked more than once by a Java
virtual machine for any given object.
Any exception thrown by the finalize
method causes
the finalization of this object to be halted, but is otherwise
ignored.
Throws | |
---|---|
Throwable |