我在onTouchListener上设置了一个按钮,我想用另一个监听器替换它。我相信我需要在为按钮设置新的监听器之前使用removeCallbacks调用,但我不确定如何使用removeCallbacks,我甚至不确定它是否是正确的使用方法。我最初设置听众是这样的:
mybutton.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
some code here
}});
请告知。
答案 0 :(得分:3)
只需调用setOnTouchListener即可替换以前的侦听器。每个View只能有一个触摸侦听器。 Android source code证实了这一点。
顺便说一句您怀疑removeCallbacks是错误的API,并与post()/ postDelayed()一起使用以将runnables添加到MessageQueue。