ViewGroup.OnInterceptTouchEvent(MotionEvent) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Implemente esse método para interceptar todos os eventos de movimento de tela sensível ao toque.
[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
O evento de movimento que está sendo enviado para baixo na hierarquia.
Retornos
Retorne true para roubar eventos de movimento dos filhos e tê-los enviados para este ViewGroup por meio de onTouchEvent(). O destino atual receberá um evento ACTION_CANCEL e nenhuma outra mensagem será entregue aqui.
- Atributos
Comentários
Implemente esse método para interceptar todos os eventos de movimento de tela sensível ao toque. Isso permite que você assista aos eventos à medida que eles são enviados para seus filhos e se apropram do gesto atual a qualquer momento.
O uso dessa função tem algum cuidado, pois tem uma interação bastante complicada e View#onTouchEvent(MotionEvent) View.onTouchEvent(MotionEvent)usá-la requer a implementação desse método, bem como este da maneira correta. Os eventos serão recebidos na seguinte ordem:
<ol><li> Você receberá o evento abaixo aqui.
<li> O evento down será tratado por um filho desse grupo de exibição ou dado ao seu próprio método onTouchEvent() para manipular; isso significa que você deve implementar onTouchEvent() para retornar true, para que você continue a ver o restante do gesto (em vez de procurar um modo de exibição pai para lidar com ele). Além disso, retornando true de onTouchEvent(), você não receberá nenhum evento a seguir no OnInterceptTouchEvent() e todo o processamento de toque deve acontecer em onTouchEvent() como normal.
<li> Enquanto você retornar false dessa função, cada evento a seguir (até e incluindo a final) será entregue primeiro aqui e, em seguida, para onTouchEvent() do destino.
<li> Se você retornar true daqui, você não receberá nenhum evento a seguir: o modo de exibição de destino receberá o mesmo evento, mas com a ação MotionEvent#ACTION_CANCEL, e todos os eventos adicionais serão entregues ao seu método onTouchEvent() e não aparecerão mais aqui.
</ol>
Java documentação para android.view.ViewGroup.onInterceptTouchEvent(android.view.MotionEvent).
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.