问题描述
我有两个视图,一个父视图(视图 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 (将#修改为@)