안드로이드
[Android, SingleClick] 싱글 클릭 리스너 구현
Black-Jin
2020. 3. 19. 15:18
반응형
abstract class OnSingleClickListener(
private val clickDelayMilliSecond: Long = CLICK_DELAY_TIME
) : View.OnClickListener {
companion object {
private const val CLICK_DELAY_TIME = 1000L
}
private var lastClickTime = 0L
protected abstract fun onSingleClick(view: View)
override fun onClick(view: View) {
val now = System.currentTimeMillis()
if (now - lastClickTime > clickDelayMilliSecond) {
onSingleClick(view)
lastClickTime = now
}
}
}
클릭 시 1초 이전에 오는 인풋은 무시하는 SingleClickListener
사용예
기존
btnActivity.setOnClickListener {
//기존 방식
}
싱글 클릭
btnActivity.setOnClickListener(object : OnSingleClickListener() {
override fun onSingleClick(view: View) {
//single click
}
})
반응형