메뉴 버튼을 누르면 한 번의 클릭 또는 두 번 클릭을 감지 할 수 있기를 원합니다. 한 번의 클릭이 감지 된 경우에도 두 번 클릭이 발생하면 다른 이벤트가 발생합니다. 여기에 내가 (이벤트 대신 토스트를 사용하여) 시도했습니다 것입니다 :메뉴 버튼을 누르면 어떻게 싱글 클릭 이벤트와 더블 클릭 이벤트를 만들 수 있습니까?
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;
}
문제는 단 한번의 클릭 이벤트가 더블 클릭 이벤트 전에 모든 시간을 감지한다는 것입니다.
왜 긴 클릭을 사용하지 않습니까? – PedroAGSantos
긴 클릭을 어떻게 감지합니까? 지금은 문서를 파고 있지만 작동하는 것을 찾지 못하고 있습니까? (지금은 길게 누르기 만하면 키보드가 나타납니다.) – jjNford
나는 당신이 말하는 것을 보았습니다. 나는보기가 아닌 실제 키보드를 오래 클릭하고 싶다. 보기에는 이미 등록 된 긴 클릭이 있습니다. – jjNford