【发布时间】:2011-11-20 19:31:07
【问题描述】:
我的问题是关于使用相同或不同的侦听器多次调用 setOnTouchListener 的效果。
view.setOnTouchListener(myListener);
我知道这最终会在运动事件的 myListener 类中调用“public boolean onTouch(View v, MotionEvent event)”方法。我不明白的是当我后来这样称呼时会发生什么:
view.setOnTouchListener(myOtherListener);
myListener 是否仍接收运动事件?
另外,如果我打电话给
view.setOnTouchListener(myListener);
再次,它是否在每个触摸事件上调用 myListener.onTouch 两次?最后,您如何取消订阅作为侦听器?
我查看了dev guide,但没有找到任何明确指出此或类似 setListeners 工作原理的内容,但如果有人手边有书签或知道它是如何工作的,将不胜感激。
【问题讨论】: