我打算将触摸事件从父视图传输到其子视图。我尝试了一些构造,但到目前为止,我还没有成功将触摸处理分配给另一个视图,而只是委托从父视图到子视图的触摸处理,这不完全相同。
这就是我想要实现的目标:
绿点是父母的Touch Down事件,然后我拖向另一个视图,然后在蓝点上拾取(在子视图上触发Touch-Down),从这一点开始,父视图是不再参与,就像我本来会碰到孩子一样。
我可以通过扩展父onTouchEvent方法委托touch事件,然后在输入childs视图范围时调用child.dispatchTouchEvent(),但我想避免父母参与。
答案 0 :(得分:0)
从View.OnTouchListener文档中,OnTouch()的返回是:
返回
True if the listener has consumed the event, false otherwise.
基本上,如果您希望父级对onTouchListener做出反应,则返回false。如果您希望它不作出反应,请返回true。