Предоставьте свои собственные методы для onShortClick (), onLongClick () и onDoubleClick ().
у быть в состоянии обнаружить один щелчок или двойной щелчок при нажатии кнопки меню. Если обнаружен один щелчок, произойдет даже одно, а при двойном щелчке произойдет другое событие. Вот что я попробовал (используя тост вместо событий):
private static final long DOUBLE_PRESS_INTERVAL = 250; // in millis
private long lastPressTime;
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
// Get current time in nano seconds.
long pressTime = System.currentTimeMillis();
// If double click...
if (pressTime - lastPressTime <= DOUBLE_PRESS_INTERVAL) {
Toast.makeText(getApplicationContext(), "Double Click Event", Toast.LENGTH_SHORT).show();
return true;
}
// If not double click....
Toast.makeText(getApplicationContext(), "Single Click Event", Toast.LENGTH_SHORT).show();
// record the last time the menu button was pressed.
lastPressTime = pressTime;
return true;
}
Проблема в том, что одно событие щелчка обнаруживается каждый раз перед событием двойного щелчка.