如何在自定义视图中使用 SimpleOnGestureListener?

齐帕尔

我不知道如何在自定义视图中使用手势检测器。我想使用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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在网络视图中使用自定义视频播放器?

如何在Android中使用网格视图创建自定义警报对话框?

如何在ModelViewSet中的自定义视图中使用参数

如何在Laravel 5的视图中使用自定义类

如何在recyclerview项目中使用自定义视图?

如何在基于类的视图中使用自定义函数

如何在Android中使自定义视图透明

如何在自定义视图中添加MDCTabBar?

如何在Android自定义视图中使用线性渐变填充路径

如何在默认Django Auth登录视图中使用自定义装饰器

如何在我的自定义视图中使用标准属性android:text?

如何在自定义视图中向多数据添加自定义数组?

如何在ListView中使用新的自定义视图?

如何在使用Volley创建的自定义列表视图中删除html标签

在XML视图中使用自定义控件

如何在ui视图中显示自定义指令?

Android在OnTouchListener SimpleOnGestureListener和setOnClickListener之间发生冲突

GestureDetector.SimpleOnGestureListener不遵守视图比例因子?

Android-如何在此列表视图中使用自定义列表视图

在自定义视图中使用FindReplaceAction

如何在自定义视图中切掉未使用的空间?

Matlab - 如何在分组条形图中使用日期时间值自定义 xaxis?

无法在自定义视图中使用 typedarray

如何在树视图中隐藏自定义按钮

如何在 SwiftUI 中使用视图提供自定义视图?

如何在自定义视图中观察 LiveData

如何在自定义对话框布局中使用视图绑定?

如何在自定义视图中解决 InflateException

如何在自定义视图中使用行权重修饰符?