Zajmuję Android 2.2.2 dla klienta i chce wykonać następujące czynności:Jak korzystać View.OnTouchListener zamiast onClick
Teraz mam przycisku ze zdarzeniem onClick ale on nie robi” Tak jak on, chce wykryć, kiedy użytkownik zwolni przycisk.
Znalazłem View.OnTouchListener, który myślę, że to jest to, czego potrzebuję użyć, ale czy istnieje możliwość dodania tego zdarzenia do xml tak jak zrobiłem z onClick?
<ImageButton
android:id="@+id/btnSaveNewGate"
android:layout_width="@dimen/btnSaveNewGate_width"
android:layout_height="@dimen/btnSaveNewGate_height"
android:layout_below="@+id/radioGrGateType"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/btnSaveNewGate_marginTop"
android:background="@null"
android:contentDescription="@string/layout_empty"
android:onClick="onSaveNewGateClick"
android:scaleType="fitXY"
android:src="@drawable/save_gate_selector" />
Mam dwa pytania więcej:
który jest wydarzeniem wiąże się gdy użytkownik zwolni palcem?
Czy istnieją wytyczne, które zabraniają używania View.OnTouchListener
zamiast onClick
?
Alternatywnie można użyć przełącznika event.getAction(), a przypadki to MotionEvent.ACTION_UP, MotionEvent.ACTION_DOWN i tak dalej. –
na jednym plus jeden pokazuje MotionEvent.ACTION_DOWN zamiast kliknij – lionheart
Zwróć uwagę, że jeśli zwrócisz tam wartość false, klauzula if nigdy nie uruchomi się. Zobacz: https://stackoverflow.com/a/20359888/564628 –