¿Qué significa el valor booleano devuelto por un método de manejo de eventos en Android

En android, la mayoría de los métodos de escucha de eventos devuelven un valor booleano. ¿Qué significa ese valor verdadero / falso? ¿Qué resultará en los sucesos posteriores?

class MyTouchListener implements OnTouchListener { @Override public boolean onTouch(View v, MotionEvent event) { logView.showEvent(event); return true; } } 

Respecto al ejemplo anterior, si devuelve true en el método onTouch , he encontrado que cada evento táctil (DOWN, UP, MOVE, etc) ha sido capturado de acuerdo a mi logView . Por el contrario, si la devolución es falsa, sólo se captura el evento DOWN. Por lo tanto, parece que devolver false evitará que el evento se propague. Estoy en lo correcto ?

Además, en un OnGestureListener , muchos métodos tienen que devolver un valor booleano también. ¿Tienen el mismo significado?

Si devuelves true de un evento ACTION_DOWN , estás interesado en el resto de los eventos en ese gesto. Un "gesto" en este caso significa todos los eventos hasta el final ACTION_UP o ACTION_CANCEL . Devolver false desde un ACTION_DOWN significa que no desea que el evento y otras vistas tengan la oportunidad de manejarlo. Si tiene vistas superpuestas, puede ser una vista de hermanos. Si no, se burbujeará hasta el padre.

De la documentación: http://developer.android.com/reference/android/view/View.OnTouchListener.html#onTouch(android.view.View , android.view.MotionEvent)

"Es cierto si el oyente ha consumido el evento, false de lo contrario."

Si devuelve true, se procesa el evento. Si es falso, pasará a la capa siguiente.

El valor booleano determina si el evento se consume o no.

Sí, tienes razón. Si devuelve false, el oyente siguiente maneja el evento. Si devuelve true, el evento es consumido por su oyente y no enviado al siguiente método.

Perdí casi un día en la solución de problemas, aún me enteré, que mi función onTouch se llama 2 veces cuando se utiliza true y 1 veces cuando se utiliza false.

  • Ocultar barra de acciones en touch android
  • Android OpenGL ES: ¿Cómo se selecciona un objeto 2D?
  • Cómo configurar un Android SeekBar para ser inmóvil / congelado?
  • Cómo detectar el contacto del usuario con el espacio telefónico usando JS
  • Android: delegar evento táctil a la vista inferior
  • El evento touchend no funciona en Android
  • Control de la propagación de eventos táctiles en caso de superposición de vistas
  • Android inyecta evento táctil
  • Cómo habilitar el zoom webview detrás del diseño lineal en android?
  • Transferir el enfoque táctil a otra vista
  • Android OpenGL ES: Coordinación de MotionEvent normalizada
  • Interesting Posts
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.