object ToolsUtil {
//防止连续点击
/** 判断是否是快速点击 */
private var lastClickTime: Long = 0
val isFastDoubleClick: Boolean
get() {
val time = System.currentTimeMillis()
val timeD = time - lastClickTime
//500毫秒内防止响应第二次,这个值可以根据需要自行调整
if (timeD < 500) {
return true
}
lastClickTime = time
return false
}
}
abstract class NoDoubleClickListener : View.OnClickListener {
override fun onClick(v: View) {
if (ToolsUtil.isFastDoubleClick) {
return
}
onNoDoubleClick(v)
}
abstract fun onNoDoubleClick(v: View?)
}
使用:
view.sOnClickListener(object : NoDoubleClickListener() {
override fun onNoDoubleClick(v: View?) {
//处理点击事件
}
})
本文介绍了如何在Android开发中使用`objectToolsUtil`防止连续点击,通过`NoDoubleClickListener`抽象类实现500毫秒内的双击判定,确保点击事件仅响应一次。
450

被折叠的 条评论
为什么被折叠?



