I am listening for a View\'s long click events via setOnLongClickListener(). Can I change the long click delay / duration?
This is what I did for handeling both onclick and custom long click on same button
public static final int LONG_PRESS_DELAY_MILLIS = 3000;
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_save:
saveInfo();
break;
default:
break;
}
}
@Override
public boolean onLongClick(View v) {
switch (v.getId()) {
case R.id.btn_save:
initSendInfo(v, System.currentTimeMillis());
return true;
default:
return false;
}
}
private void initSendInfo(View v, long startTime) {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
if (v.isPressed() && System.currentTimeMillis() - startTime >= LONG_PRESS_DELAY_MILLIS) {
sendInfo();
return;
} else if (!v.isPressed()) {
return;
}
}
}, LONG_PRESS_DELAY_MILLIS);
}