Condividi tramite


ViewGroup.OnInterceptTouchEvent(MotionEvent) Metodo

Definizione

Implementare questo metodo per intercettare tutti gli eventi di movimento touch screen.

[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

Parametri

ev
MotionEvent

Evento di movimento inviato verso il basso nella gerarchia.

Restituisce

Restituisce true per rubare gli eventi di movimento dagli elementi figlio e inviarli a questo ViewGroup tramite onTouchEvent(). La destinazione corrente riceverà un evento ACTION_CANCEL e non verranno recapitati altri messaggi qui.

Attributi

Commenti

Implementare questo metodo per intercettare tutti gli eventi di movimento touch screen. In questo modo puoi guardare gli eventi man mano che vengono inviati ai tuoi figli e assumere la proprietà del movimento corrente in qualsiasi momento.

L'uso di questa funzione si prende cura, perché ha un'interazione piuttosto complicata con View#onTouchEvent(MotionEvent) View.onTouchEvent(MotionEvent)e l'uso richiede l'implementazione di tale metodo e questo nel modo corretto. Gli eventi verranno ricevuti nell'ordine seguente:

<ol><li> Si riceverà l'evento inattivo qui. <li> L'evento down verrà gestito da un elemento figlio di questo gruppo di visualizzazioni o assegnato al proprio metodo onTouchEvent() da gestire. Ciò significa che è necessario implementare onTouchEvent() per restituire true, quindi si continuerà a visualizzare il resto del movimento (invece di cercare una visualizzazione padre per gestirlo). Inoltre, restituendo true da onTouchEvent(), non riceverai alcun evento seguente in onInterceptTouchEvent() e l'elaborazione del tocco deve essere eseguita in onTouchEvent() come di consueto. <li> Finché si restituisce false da questa funzione, ogni evento seguente (fino a e incluso l'ultimo) verrà recapitato prima qui e poi all'onTouchEvent(). <li> Se si restituisce true da qui, non si riceveranno eventi seguenti: la visualizzazione di destinazione riceverà lo stesso evento, ma con l'azione MotionEvent#ACTION_CANCELe tutti gli altri eventi verranno recapitati al metodo onTouchEvent() e non verranno più visualizzati qui. </olo>

Documentazione java per android.view.ViewGroup.onInterceptTouchEvent(android.view.MotionEvent).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a