Jak mogę zaimplementować podwójne kliknięcie przycisku w systemie Android? Czy powinienem używać OnDoubleTapListener?Narzędzie do podwójnego kliknięcia przycisku w Androidzie
14
A
Odpowiedz
3
jest to dobre miejsce do wykonywania podwójnego kliknięcia ... użyłem go i pracował .
http://mobile.tutsplus.com/tutorials/android/android-gesture/
4
Prawdopodobnie jest to dobre miejsce, aby rozpocząć:
Android: How to detect double-tap?
polecam przejście na bardziej natywny sposób jak długie naciśnięcie (odpowiedź na połączonego pytanie) lub coś bardziej twórczego (za pomocą multi-touch), chyba że jesteś skłonny do domyślnego, dwukanałowego sposobu działania Windowsa?
Być może masz jednak ważny powód - dwukrotne kliknięcie jest po wszystkim szybszym niż długie naciśnięcie.
28
int i = 0;
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
i++;
Handler handler = new Handler();
Runnable r = new Runnable() {
@Override
public void run() {
i = 0;
}
};
if (i == 1) {
//Single click
handler.postDelayed(r, 250);
} else if (i == 2) {
//Double click
i = 0;
ShowDailog();
}
}
});
3
Napisałem to dla pojawiały się wiadomości toast na podwójne kliknięcie w aplikacji mapowania:
private long lastTouchTime = -1;
@Override
public boolean onTouchEvent(MotionEvent e, MapView mapView) {
GeoPoint p = null;
if (e.getAction() == MotionEvent.ACTION_DOWN) {
long thisTime = System.currentTimeMillis();
if (thisTime - lastTouchTime < 250) {
// Double click
p = mapView.getProjection().fromPixels((int) e.getX(), (int) e.getY());
lastTouchTime = -1;
} else {
// too slow
lastTouchTime = thisTime;
}
}
if (p != null) {
showClickedLocation(p);// Raise a Toast
}
return false;
}
1
private long lastTouchTime = 0;
private long currentTouchTime = 0;
..
@Override
public void onClick(View view) {
lastTouchTime = currentTouchTime;
currentTouchTime = System.currentTimeMillis();
if (currentTouchTime - lastTouchTime < 250) {
Log.d("Duble","Click");
lastTouchTime = 0;
currentTouchTime = 0;
}
}
Powiązane problemy
- 1. Wyłącz dźwięk kliknięcia przycisku w Androidzie
- 2. Wykonywanie podwójnego kliknięcia korzystając CGEventCreateMouseEvent()
- 3. wyzwalania back-przycisk funkcjonalność na kliknięcia przycisku w Androidzie
- 4. Otwórz adres URL kliknięcia przycisku OK w Androidzie
- 5. UISearchDisplayController - Metoda kliknięcia przycisku anulowania
- 6. Używanie AutoIt do kliknięcia przycisku w oknie
- 7. Jak dołączyć zachowanie niestandardowe do podwójnego kliknięcia w jsTree?
- 8. Jak ustawić domyślną akcję podwójnego kliknięcia w Visual Studio?
- 9. Zwiększenie powierzchni kliknięcia przycisku
- 10. iść do łączenia na kliknięcia przycisku - jquery
- 11. Wyłączanie podwójnego kliknięcia Zoom/Unzoom na widoku internetowym
- 12. Jak $ _POST bez kliknięcia przycisku?
- 13. Obsługa kliknięcia przycisku "Subskrybuj" Facebooka
- 14. Wykrywanie podwójnego kliknięcia w wierszu tabeli Widok JavaFX
- 15. Czynność kliknięcia przycisku w systemie Android?
- 16. $ stosuje się już w trakcie wysyłania zdarzenia kliknięcia do przycisku?
- 17. Zdarzenie kliknięcia przycisku dla widgetu Android
- 18. Funkcja kliknięcia przycisku Jquery nie działa
- 19. Czy do kliknięcia przycisku angularjs można użyć powershell?
- 20. Okrągły przycisk w Androidzie .. unikać naciśnięć przycisku "na zewnątrz" przycisku?
- 21. dynamiczne dodawanie pól tekstowych do formularza za pomocą kliknięcia przycisku
- 22. Kliknięcia przycisku rozwijania za pomocą Rx
- 23. Jak dodać obsługę kliknięcia do przycisku GWT ButtonCell?
- 24. Espresso AmbiguousViewMatcherException podczas próby kliknięcia przycisku nawigacyjnego
- 25. Lewy wyrównanie tekstu wewnątrz przycisku w Androidzie
- 26. Czy istnieje sposób wyłączenia funkcji "podwójnego kliknięcia, aby skopiować" etykiety .NET?
- 27. Katalog do przechowywania plików audio w Androidzie
- 28. Wybierz i wywołaj zdarzenie kliknięcia przycisku radiowego w jquery
- 29. Jak zamknąć SP.UI.ModalDialog z kliknięcia przycisku w sharepoint?
- 30. jak wywołać zdarzenie kliknięcia pliku wejściowego z kliknięcia przycisku w kancie 2?
nie biorą pod uwagę wszelkie [ograniczenia czasowe] (http://stackoverflow.com/a/15353499/636571). – an00b
@ an00b sprawdź zaktualizowaną odpowiedź z ograniczeniami czasowymi –
Ah, rozumiem. +1. – an00b