java使用motionevents模拟鼠标单击
我试图模拟当应用程序中的鼠标垫被按下而未移动时的鼠标点击
if(isConnected && out!=null){
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
//save X and Y positions when user touches the TextView
initX =event.getX();
initY =event.getY();
mouseMoved=false;
break;
case MotionEvent.ACTION_MOVE:
disX = event.getX()- initX; //Mouse movement in x direction
disY = event.getY()- initY; //Mouse movement in y direction
/*set init to new position so that continuous mouse movement
is captured*/
initX = event.getX();
initY = event.getY();
if(disX !=0|| disY !=0){
out.println(disX +","+ disY); //send mouse movement to server
}
mouseMoved=true;
break;
case MotionEvent.ACTION_UP:
//consider a tap only if usr did not move mouse after ACTION_DOWN
if(!mouseMoved){
out.println(Constants.MOUSE_LEFT_CLICK);
}
}
}
return true;
}
});
}
我试过这个,但我不明白为什么它不起作用。每次我点击鼠标垫,鼠标就会移动。我怎样才能解决这个问题
# 1 楼答案
用
if-else
试一下,先按一下,然后在else中移动# 2 楼答案
我通过设置一个余量来解决我的问题