利用kotlin的拓展函数,简单的给view增加双击事件:
工具笔记,方便快捷,只是写个简单的笔记,为啥要50个字?
/**
* @author : leo
* @date : 2021/8/18
* @description : View双击拓展
*/
@SuppressLint("ClickableViewAccessibility")
inline fun <T : View> T.doubleClick(crossinline block: (T) -> Unit) {
val gestureDetector = object : GestureDetector.SimpleOnGestureListener() {
override fun onDoubleTap(e: MotionEvent?): Boolean {
block(this@doubleClick)
return true
}
override fun onSingleTapUp(e: MotionEvent?): Boolean {
this@doubleClick.performClick()
return true
}
}
val gestureDetectorCompat = GestureDetectorCompat(context, gestureDetector)
this.setOnTouchListener { _, event ->
gestureDetectorCompat.onTouchEvent(event)
return@setOnTouchListener true
}
}