问题描述
|
我在按钮上有一个onLongClick事件,但是长按之后,彩色高光不会被删除。
我在同一按钮上也有一个onClick事件,其行为符合预期。
换句话说,按钮在开始单击时即被着色,释放按钮时应将其颜色删除。对于onClick,它可以正常工作,但是onLongClick不会删除突出显示。
无论onLongClick返回true还是false,这都是相同的。
解决方法
对于其他有类似问题的人:
不清除按钮上的突出显示通常是由于您的onLongClick侦听器在不取消选择的情况下使用了事件而导致的。尝试类似的东西
MotionEvent cancel = MotionEvent.obtain(e2);
cancel.setAction(MotionEvent.ACTION_CANCEL);
view.onTouchEvent(cancel);
cancel.recycle();
只要您不同时吃进ACTION_CANCEL,就应该取消选择它。