Wykrywanie gestów

Dodano na poziomie interfejsu API XE12

Wykrywanie gestów zoptymalizowanym pod kątem rozpoznawania gestów dotykowych na touchpadzie.

Dostępne są detektory gestów (np. GestureDetector.BaseListener, GestureDetector.FingerListener) i nasłuchiwania gestów (np. GestureDetector.ScrollListener, GestureDetector.OneFingerScrollListener, GestureDetector.TwoFingerScrollListener).

Więcej informacji znajdziesz w przewodniku dla programistów Gesty dotykowe.

Zastosowanie ogólne

  1. Zaimplementuj dowolne interfejsy detektora i skonfiguruj je w GestureDetector.
  2. Aby przetworzyć zdarzenie, zastąp wywołania zwrotne zdarzeń wejściowych, np. onGenericMotionEvent(MotionEvent) lub dispatchGenericFocusedEvent(MotionEvent), i przekaż MotionEvent do metody onMotionEvent(MotionEvent) detektora gestów.
  3. Odpowiednio obsłuż zdarzenie w detektorach wykrywania gestów.

    Uwaga: wdrażając metody onXXX dla detektorów, ustaw wartość zwracaną na true tylko wtedy, gdy nie chcesz wysyłać MotionEvent do żadnych innych elementów nasłuchu w potoku wysyłania.

Zagnieżdżone klasy
interfejs, GestureDetector.BaseListener Otrzymuje wyniki wykrywania. 
interfejs, GestureDetector.FingerListener Detektor zgłasza zmiany liczby wykrytych palców na touchpadzie. 
interfejs, GestureDetector.OneFingerScrollListener Ten detektor odbiera ciągłe zdarzenia przewijania w poziomie 1 palcem. 
interfejs, GestureDetector.ScrollListener Ten detektor odbiera zdarzenia ciągłego przewijania w poziomie niezależnie od liczby palców. 
interfejs, GestureDetector.TwoFingerScrollListener Ten detektor odbiera ciągłe zdarzenia przewijania w poziomie 2 palcami. 
Konstruktorki publiczne
Metody publiczne
statyczna wartość logiczna
isForward(gest Gest)
statyczna wartość logiczna
isForward(liczba zmiennoprzecinkowa deltaX)
boolean
GestureDetector
setAlwaysConsumeEvents(wartość logiczna włączona)
GestureDetector
GestureDetector
GestureDetector
GestureDetector
GestureDetector
Metody dziedziczone

Konstruktorki publiczne

Dodano na poziomie interfejsu API XE12

public GestureDetector (kontekst kontekstu)

Metody publiczne

Dodano na poziomie interfejsu API XE16

public static boolean isForward (ges Gest)

Zwraca true, jeśli podany gest odpowiada przesuwaniu do przodu na touchpadzie.

Ta metoda ma zastosowanie tylko w przypadku przesuwania z boku strony i odrzuca wyjątek, jeśli zostanie wywołana przy użyciu innych gestów.

Dodano na poziomie interfejsu API XE16

public static boolean isForward (float delta)

Zwraca wartość true, jeśli dane przesunięcie odpowiada ruchowi do przodu na touchpadzie.

Dodano na poziomie interfejsu API XE12

public boolean onMotionEvent (zdarzenie MotionEvent)

Przetwarza zdarzenie ruchu i zwraca wartość true, jeśli zdarzenia mają być zawsze brane pod uwagę lub po wykryciu gestu.

Zwroty
  • określa, czy zdarzenie dotknięcia jest liczone
Dodano na poziomie interfejsu API XE12

public GestureDetector setAlwaysConsumeEvents (boolean enabled)

Określa, czy detektor gestów ma przetwarzać zdarzenia przekazywane do onMotionEvent(MotionEvent) niezależnie od tego, czy zostały one rzeczywiście obsługiwane.

Dodano na poziomie interfejsu API XE12

publicGestureDetector setBaseListenerGestureDetector.BaseListener

Ustawia podstawowy detektor gestów.

Dodano na poziomie interfejsu API XE12

publicGestureDetector setFingerListenerGestureDetector.FingerListener

Ustawianie nasłuchiwania palca.

Dodano na poziomie interfejsu API XE21

publiczna GestureDetector setOneFingerScrollListener (GestureDetector.OneFingerScrollListener)

Ustawia detektor, który wykrywa przewijanie w poziomie i 1 palcem.

Dodano na poziomie interfejsu API XE12

publicGestureDetector setScrollListenerGestureDetector.ScrollListener

Ustawia detektor, który wykrywa przewijanie poziome niezależnie od liczby palców.

Dodano na poziomie interfejsu API XE12

publicGestureDetector setTwoFingerScrollListenerGestureDetector.TwoFingerScrollListener

Ustawia detektor, który wykrywa przewijanie w poziomie i 2 palcami.