OnClickListener를 상속받는 새 클릭 리스너를 생성한다.
class OnSingleClickListener(private val onSingleClick: (View) -> Unit) : View.OnClickListener {
companion object {
const val CLICK_INTERVAL = 500
}
private var lastClickedTime: Long = 0L
private fun isSafe(): Boolean {
return System.currentTimeMillis() - lastClickedTime > CLICK_INTERVAL
}
override fun onClick(v: View?) {
if (isSafe() && v != null) {
onSingleClick(v)
}
lastClickedTime = System.currentTimeMillis()
}
}
미리 클릭시간 변수를 지정해두고 클릭되었을 때
시스템 시간 값과 클릭했을 때 시간 값의 차가 클릭 시간 변수보다 클 때를 판별해 boolean으로 return 시킨다.
return 받은 boolean을 판별해 클릭 후 실행할 코드를 구현한다.
'Android > Reference' 카테고리의 다른 글
RecyclerView 엣지 스크롤 이펙트 숨기기 (0) | 2020.12.16 |
---|---|
Animation / 애니메이션 구현 (AnimationDrawable) (0) | 2020.12.11 |
TitleBar (타이틀바), 상태바 제거 (0) | 2020.10.28 |
RecyclerView 화면에 보이는 아이템 추출 (0) | 2020.10.28 |
ScrollListener (스크롤 리스너) (0) | 2020.10.28 |