如何解决将多点触控传递给父视图
我有两个视图,一个父视图(视图 A)和一个子视图(视图 B),视图 B 在视图 A 中。这是我的情况:
- 在视图 B 中触摸 1 个手指 -> 视图 B 中的
ACTION_DOWN
被调用 - 在视图 B 中移动这个手指 ->
ACTION_MOVE
在视图 B 中被调用 - 在视图 B 中再触摸 1 个手指 -> 视图 B 中的
ACTION_POINTER_DOWN
被调用
现在,我不想再处理视图 B 中的触摸事件,我想将此 ACTION_POINTER_DOWN
操作发送到视图 A,然后继续处理它。我在视图 B 的 return false
中调用了 onTouchEvent
,但它不起作用。
代码示例
ViewB.kt
override fun onTouchEvent(event: MotionEvent): Boolean {
when (event.action and MotionEvent.ACTION_MASK) {
MotionEvent.ACTION_POINTER_DOWN -> {
return false
}
}
return true
}
查看A.kt
override fun onTouchEvent(event: MotionEvent): Boolean {
when (event.action and MotionEvent.ACTION_MASK) {
MotionEvent.ACTION_POINTER_DOWN -> {
scaleViewA()
}
}
return true
}
当我在视图 B 上触摸 2 个手指时,如何调用方法 scaleViewA()
?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。