Skip to main content
Logo Appt Light

Input gestures on Android

Gesture activated functionality should also be available without the use of gestures. Not everyone is able to make all gestures. For example, for users with limited mobility it might be difficult or impossible to make the 'pinch-to-zoom' gesture. You should provide buttons to zoom in and out as an alternative.

On Android, the GestureDetector and OnGestureListener objects are a common way to detect gestures.

A gesture should not be the only way to trigger actions. Make sure to provide a second way, such as a button, to trigger the same action.

val scaleGestureDetector = ScaleGestureDetector(
    this,
    object : ScaleGestureDetector.SimpleOnScaleGestureListener() {
        override fun onScale(detector: ScaleGestureDetector): Boolean {
            // Provide alternative
            return super.onScale(detector)
        }
    }
)

view.setOnTouchListener { _, event ->
    scaleGestureDetector.onTouchEvent(event)
}

Feedback?

Let us know!