Detector de gestos

Adicionado no nível da API XE12

Um detector de gestos otimizado para reconhecer gestos de toque para o touchpad.

Há listeners de gestos discretos (por exemplo, GestureDetector.BaseListener, GestureDetector.FingerListener) e listeners de gestos contínuos (por exemplo, GestureDetector.ScrollListener, GestureDetector.OneFingerScrollListener, GestureDetector.TwoFingerScrollListener).

Para ver mais informações, consulte o guia do desenvolvedor Gestos de toque.

Uso geral

  1. Implemente as interfaces de listener desejadas e defina-as no GestureDetector.
  2. Modifique os callbacks de eventos de entrada, como onGenericMotionEvent(MotionEvent) ou dispatchGenericFocusedEvent(MotionEvent), e transmita MotionEvent ao método onMotionEvent(MotionEvent) do detector de gestos para processar o evento.
  3. Processe o evento de maneira adequada nos listeners do detector de gestos.

    Observação: ao implementar os métodos onXXX para listeners, defina o valor de retorno como true somente se não quiser enviar MotionEvent para nenhuma outra entidade de detecção no pipeline de envio de entradas.

Classes aninhadas
Interface GestureDetector.BaseListener Recebe os resultados da detecção. 
Interface GestureDetector.FingerListener Esse listener informa quando a contagem de dedos detectada muda no touchpad. 
Interface GestureDetector.OneFingerScrollListener Esse listener recebe eventos contínuos de rolagem horizontal com um dedo. 
Interface GestureDetector.ScrollListener Esse listener recebe eventos de rolagem horizontal contínuos independentes da contagem de dedos. 
Interface GestureDetector.TwoFingerScrollListener Esse listener recebe eventos contínuos de rolagem horizontal com dois dedos. 
Construtores públicos
GestureDetector(contexto de contexto)
Métodos públicos
Booleano estático
isForward(gesto de gesto)
Booleano estático
isForward(deltaX flutuante)
boolean
GestureDetector
setAlwaysConsumeEvents(booleano ativado)
GestureDetector
GestureDetector
GestureDetector
GestureDetector
GestureDetector
Métodos herdados

Construtores públicos

Adicionado no nível da API XE12

public GestureDetector (contexto de contexto)

Métodos públicos

Adicionado no nível XE16 da API

public Static booleano isForward (gesto do Gesto)

Retornará true se o gesto fornecido corresponder ao movimento de avanço no touchpad.

Esse método só faz sentido para deslizes laterais e gera uma exceção se chamado em outros gestos.

Adicionado no nível XE16 da API

public Static booleano isForward (deltaX flutuante)

Retorna true se o deslocamento especificado corresponder ao movimento para frente no touchpad.

Adicionado no nível da API XE12

public boolean onMotionEvent (evento MotionEvent)

Processa um evento de movimento, retornando true caso os eventos sejam sempre consumidos ou se um gesto for detectado.

Retorna
  • reflete se o evento de toque é consumido
Adicionado no nível da API XE12

public GestureDetector setAlwaysConsumeEvents (boolean enabled)

Define se o detector de gestos precisa consumir eventos transmitidos para onMotionEvent(MotionEvent), independentemente de terem sido realmente processados.

Adicionado no nível da API XE12

public GestureDetector setBaseListener (GestureDetector.BaseListener listener)

Define o listener de gestos básico.

Adicionado no nível da API XE12

public GestureDetector setFingerListener (ListenerGestureDetector.FingerListener)

Define o listener do dedo.

Adicionado no nível da API XE21

public GestureDetector setOneFingerScrollListener (listenente GestureDetector.OneFingerScrollListener)

Define o listener que detecta rolagem horizontal e com um dedo.

Adicionado no nível da API XE12

public GestureDetector setScrollListener (GestureDetector.ScrollListener do listener)

Define o listener que detecta a rolagem horizontal independente da contagem de dedos.

Adicionado no nível da API XE12

public GestureDetector setTwoFingerScrollListener (listenerGestureDetector.TwoFingerScrollListener)

Define o listener que detecta rolagem horizontal e com dois dedos.