我使用以下代码来检测屏幕上的点击,但是我注意到它响应滑动并激活事件处理程序中的代码几次,我如何阻止这一点?谢谢。
@Override
public boolean onTouchEvent(MotionEvent event) {
int x = (int)event.getX();
if (x < viewWidth/2)
{
xDir -= 10;
}
else
{
xDir += 10;
}
return true;
}
你应该这样写:
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
int x = (int)event.getX();
if (x < viewWidth/2) {
xDir -= 10;
}else {
xDir += 10;
}
}
}
注意:你可以使用其他MotionEvent标志,如ACTION_DOWN…