我不知道如何在自定义视图中使用手势检测器。我想使用onLongPress
,但我不知道放在哪里或如何使用它。
class CustomView(context: Context, attr: AttributeSet) : View(context, attr) {
val listener = object :
GestureDetector.SimpleOnGestureListener() {
}
}
val detector = GestureDetector(context, listener)
}
也许有人可以帮助我。谢谢你。
你读过这个吗?https://developer.android.com/training/gestures/detector#detect-all-supported-gestures
整本书都值得一读,但基本上你覆盖了你想要处理的手势的函数SimpleOnGestureListener
val listener = object : GestureDetector.SimpleOnGestureListener() {
override fun onLongPress (MotionEvent e) {
// do whatever
}
}
然后您GestureDetector
使用该侦听器创建一个:
val detector = GestureDetectorCompat(context, listener)
然后您覆盖视图的onTouchEvent
方法并让您的检测器处理事件:
override fun onTouchEvent(event: MotionEvent): Boolean {
detector.onTouchEvent(event)
return super.onTouchEvent(event)
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句