Android: no puede ver ACTION_MOVE / UP en onTouchEvent de un RelativeLayout

He registrado un oyente a un RelativeLayout, ver más abajo. Me gustaría añadir un poco de manejo de eventos personalizados,

mOnTouchListener = new OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { final int action = motionEvent.getAction(); boolean ret = false; switch (action) { case MotionEvent.ACTION_DOWN: ret = doSth(motionEvent); break; case MotionEvent.ACTION_MOVE: ret = doSth(motionEvent); break; case MotionEvent.ACTION_UP: ret = doSth(motionEvent); break; } return ret; // returning false got me none of MOVE/UP events right here } }; 

Sin embargo, no puedo obtener ningún evento MOVE / UP a menos que se devuelva true.

Otro intento, me registré mismo oyente a un CheckBox, todo salió bastante bien.
¿Hay diferencia entre ViewGroup y Widget? ¿Propósito del diseño?

"Sin embargo, no puedo obtener ningún MOVE / UP eventos a menos que sea verdad."

Has respondido a tu propia pregunta. Si no devuelves true indicando que te importan y están manejando el evento, el sistema no te enviará los eventos posteriores, porque has dicho al sistema que no te importa. Si necesita monitorear todo el ciclo de vida del evento táctil, debe devolver true siempre.

  • Android: maneja eventos de teclado virtual y físico
  • Interacción de ExpandableListAdapter.getChildView () con AbsListView.LayoutParams
  • Escucha los cambios de volumen en Android
  • Android - Cómo configurar un método con nombre en button.setOnClickListener ()
  • Cómo mantener DropDownList de AutoCompleteTextView abierto después de presionar la tecla Atrás?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.