0
我拼命想解决这个问题: 只有一个ACTION_DOWN事件触发我的方法。整天,它运行良好,但现在它不再工作了,但我没有改变任何东西。TouchEvent不再工作
public boolean onTouch(View v, MotionEvent event) {
boolean isReleased = event.getAction() == MotionEvent.ACTION_UP || event.getAction() == MotionEvent.ACTION_CANCEL;
boolean isPressed = event.getAction() == MotionEvent.ACTION_DOWN;
boolean isMoved = event.getAction() == MotionEvent.ACTION_MOVE;
if(isPressed){
if(Gesture_Done){
reset_It();
}
xPressed = event.getX();
yPressed = event.getY();
action_timelist.add(System.currentTimeMillis());
if(action_timelist.size()>1){
evaluate_actionlist(true);
}
}
else if(isReleased){
if(!Gesture_Done){
action_timelist.add(System.currentTimeMillis());
evaluate_actionlist(false);
}
Gesture_Done=false;
}
else if(isMoved){
xMoved = xPressed - event.getX();
yMoved = yPressed - event.getY();
checkGesture();
}
return false;
}
原因没有显示的错误,我不知道如何解决它..
非常感谢。我试图解决这个问题好几个小时。 你有一个想法,为什么它运作良好,然后停止工作?我今天更新了java,但我认为这不重要。 – Alrick
您必须将最下面的返回值更改为false;从真实的回归;这是我能想到的唯一原因。 –