2011-06-29 10 views
7

THS SDK dijo:¿onInterceptTouchEvent() realmente funciona como dijo el SDK?

3, Durante el tiempo que regrese falsa de esta función, cada evento siguiente (hasta e incluyendo la final arriba) será entregado por primera vez aquí y luego a onTouchEvent del objetivo() .

4, si devuelve verdadero desde aquí, no recibirá ningún evento siguiente: la vista de destino recibirá el mismo evento pero con la acción ACTION_CANCEL, y todos los eventos adicionales se entregarán a su método enTouchEvent() y no más aparecen aquí.

Pero cuando uso este método, no importa lo que onInterceptTouchEvent() devuelva, ¡hace el mismo trabajo! Y nunca se han capturado MotionEvent.ACTION_MOVE o MotionEvent.ACTION_UP con este método. ¿Alguien puede ayudarme a resolverlo?

ths!

Respuesta

4

Normalmente, el toque va desde la vista más alta a la más baja a través de onInterceptTouchEvent y luego vuelve a través de onTouchEvent.

Si devuelve cierto en onInterceptTouchEven t que lo prohíben para continuar y la vista en la que volverá verdadero es el último en recibir el tacto, se consumen

También puede no permitir su vista padre para consumir el evento por requestDisallowInterceptTouchEvent(true);

Cuestiones relacionadas