Compartir a través de


ViewGroup.OnInterceptTouchEvent(MotionEvent) Método

Definición

Implemente este método para interceptar todos los eventos de movimiento de pantalla táctil.

[Android.Runtime.Register("onInterceptTouchEvent", "(Landroid/view/MotionEvent;)Z", "GetOnInterceptTouchEvent_Landroid_view_MotionEvent_Handler")]
public virtual bool OnInterceptTouchEvent (Android.Views.MotionEvent? ev);
[<Android.Runtime.Register("onInterceptTouchEvent", "(Landroid/view/MotionEvent;)Z", "GetOnInterceptTouchEvent_Landroid_view_MotionEvent_Handler")>]
abstract member OnInterceptTouchEvent : Android.Views.MotionEvent -> bool
override this.OnInterceptTouchEvent : Android.Views.MotionEvent -> bool

Parámetros

ev
MotionEvent

Evento de movimiento que se envía por la jerarquía.

Devoluciones

Devuelve true para robar eventos de movimiento de los elementos secundarios y enviarlos a este ViewGroup a través de onTouchEvent(). El destino actual recibirá un evento de ACTION_CANCEL y no se entregarán más mensajes aquí.

Atributos

Comentarios

Implemente este método para interceptar todos los eventos de movimiento de pantalla táctil. Esto le permite ver eventos a medida que se envían a sus hijos y tomar posesión del gesto actual en cualquier momento.

El uso de esta función tiene algún cuidado, ya que tiene una interacción bastante complicada con View#onTouchEvent(MotionEvent) View.onTouchEvent(MotionEvent)y su uso requiere implementar ese método, así como este de la manera correcta. Los eventos se recibirán en el orden siguiente:

<ol><li> Usted recibirá el evento de abajo aquí. <li> El evento down lo controlará un elemento secundario de este grupo de vistas o se le dará a su propio método onTouchEvent() para controlar; esto significa que debe implementar onTouchEvent() para devolver true, por lo que seguirá viendo el resto del gesto (en lugar de buscar una vista primaria para controlarlo). Además, al devolver true desde onTouchEvent(), no recibirá ningún evento siguiente en onInterceptTouchEvent() y todo el procesamiento táctil debe ocurrir en onTouchEvent() como normal. <li> Siempre y cuando devuelva false de esta función, cada evento siguiente (hasta e incluido el final) se entregará primero aquí y, a continuación, al onTouchEvent() de destino. <li> Si devuelve true desde aquí, no recibirá ningún evento siguiente: la vista de destino recibirá el mismo evento, pero con la acción MotionEvent#ACTION_CANCEL, y todos los eventos adicionales se entregarán al método onTouchEvent() y ya no aparecerán aquí. </Ol>

Documentación de Java para android.view.ViewGroup.onInterceptTouchEvent(android.view.MotionEvent).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Se aplica a