to top
Android APIs
public class

GestureDetectorCompat

extends Object
java.lang.Object
   ↳ android.support.v4.view.GestureDetectorCompat

Class Overview

Detects various gestures and events using the supplied MotionEvents. The GestureDetector.OnGestureListener callback will notify users when a particular motion event has occurred. This class should only be used with MotionEvents reported via touch (don't use for trackball events).

This compatibility implementation of the framework's GestureDetector guarantees the newer focal point scrolling behavior from Jellybean MR1 on all platform versions.

To use this class:

Summary

Public Constructors
GestureDetectorCompat(Context context, GestureDetector.OnGestureListener listener)
Creates a GestureDetectorCompat with the supplied listener.
GestureDetectorCompat(Context context, GestureDetector.OnGestureListener listener, Handler handler)
Creates a GestureDetectorCompat with the supplied listener.
Public Methods
boolean isLongpressEnabled()
boolean onTouchEvent(MotionEvent event)
Analyzes the given motion event and if applicable triggers the appropriate callbacks on the GestureDetector.OnGestureListener supplied.
void setIsLongpressEnabled(boolean enabled)
Set whether longpress is enabled, if this is enabled when a user presses and holds down you get a longpress event and nothing further.
void setOnDoubleTapListener(GestureDetector.OnDoubleTapListener listener)
Sets the listener which will be called for double-tap and related gestures.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public GestureDetectorCompat (Context context, GestureDetector.OnGestureListener listener)

Creates a GestureDetectorCompat with the supplied listener. As usual, you may only use this constructor from a UI thread.

Parameters
context the application's context
listener the listener invoked for all the callbacks, this must not be null.
See Also

public GestureDetectorCompat (Context context, GestureDetector.OnGestureListener listener, Handler handler)

Creates a GestureDetectorCompat with the supplied listener. As usual, you may only use this constructor from a UI thread.

Parameters
context the application's context
listener the listener invoked for all the callbacks, this must not be null.
handler the handler that will be used for posting deferred messages
See Also

Public Methods

public boolean isLongpressEnabled ()

Returns
  • true if longpress is enabled, else false.

public boolean onTouchEvent (MotionEvent event)

Analyzes the given motion event and if applicable triggers the appropriate callbacks on the GestureDetector.OnGestureListener supplied.

Parameters
event The current motion event.
Returns

public void setIsLongpressEnabled (boolean enabled)

Set whether longpress is enabled, if this is enabled when a user presses and holds down you get a longpress event and nothing further. If it's disabled the user can press and hold down and then later moved their finger and you will get scroll events. By default longpress is enabled.

Parameters
enabled whether longpress should be enabled.

public void setOnDoubleTapListener (GestureDetector.OnDoubleTapListener listener)

Sets the listener which will be called for double-tap and related gestures.

Parameters
listener the listener invoked for all the callbacks, or null to stop listening for double-tap gestures.