我正在开发一个SDK,在其中我从两个不同的类中设置OnTouchListener
到2个不同的视图,每个类都需要处理相同的触摸事件。
到目前为止,我只需要其中一个ACTION_DOWN
事件,所以方法编写如下:
@Override
public boolean onTouch(View v, MotionEvent event) {
ABLogger.d("onTouch Walkthrough handler");
if (event.getAction() != MotionEvent.ACTION_DOWN) {
return false;
}
return onAction(v, event);
}
当我收到传递ACTION_DOWN
的{{1}}事件作为返回值时它运行良好,并且以下事件将传播到下一个视图及其侦听器。
现在我需要在这个方法中测试滚动没有被提交,为了做到这一点,我需要在这里接收false
事件。但是除非我在这种方法的回归中通过ACTION_UP
,否则我不会收到它。但是如果我这样做,那么下一个听众就不再接收这些事件了。
问题是:我如何收到两个听众中的所有事件,或者至少收到其中一个事件中的事件并强制它将事件传递给第二个?< / p>