Files
assistant-android/app/src/main/java/com/gh/common/util/FastClickUtils.kt
2020-09-25 16:19:07 +08:00

23 lines
631 B
Kotlin

package com.gh.common.util
import com.gh.common.OnFastClickListener
import io.reactivex.disposables.Disposable
import java.lang.ref.WeakReference
object FastClickUtils {
private var disposable: Disposable? = null
private var ref: WeakReference<OnFastClickListener>? = null
fun click(duration: Int = 500, onClick: OnFastClickListener) {
ref = WeakReference(onClick)
disposable?.dispose()
ref?.get()?.invoke(false)
disposable = rxTimer(1) {
if (it >= duration) {
ref?.get()?.invoke(true)
disposable?.dispose()
}
}
}
}