I have looked at the answers here - Android Preventing Double Click On A Button and implemented qezt's solution like and I've tried setEnabled(false) like so -
doneButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // mis-clicking prevention, using threshold of 1 second if (SystemClock.elapsedRealtime() - doneButtonClickTime < 1000){ return; } //store time of button click doneButtonClickTime = SystemClock.elapsedRealtime(); doneButton.setEnabled(false); //do actual work } }); Neither of these work against super fast double clicks.
Note - I'm not setting doneButton.setEnabled(true) after my processing is done. I simply finish() the activity so there is no issue of the button getting enabled too soon.
setEnabled(false)working ?