I have a problem with my app that if the user clicks the button multiple times quickly, then multiple events are generated before even my dialog holding the button disappear
With RxBinding it can be done easily. Here is an example:
RxView.clicks(view).throttleFirst(500, TimeUnit.MILLISECONDS).subscribe(empty -> { // action on click });
Add the following line in build.gradle to add RxBinding dependency:
build.gradle
compile 'com.jakewharton.rxbinding:rxbinding:0.3.0'