我正在尝试android运动事件 . 但是,我不知道为什么它不能去> case MotionEvent.ACTION_MOVE:
这是我的代码 .
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action){
case MotionEvent.ACTION_DOWN:
startX = (int)event.getX();
startY = (int)event.getY();
selecting=false;
break;
case MotionEvent.ACTION_MOVE:
selecting=true;
break;
case MotionEvent.ACTION_UP:
if(selecting){
endX = (int)event.getX();
endY = (int)event.getY();
selected=true;
}
selecting=false;
break;
}
}
无论我如何滑动和触摸,即使我在MotionEvent.ACTION_UP中移除if(选择)条件,它总是显示相同的输出 .
start:{498.0,365.0}结束:{0.0,0.0}选择:false selected:false
我改成之后
public boolean onTouchEvent(MotionEvent事件)
一切正常 . 任何人都可以向我解释为什么会这样?
如果可能的话,帮我解决这个问题 . How to get the actual point when I touch on screen?
1 回答
要获取以下MotionEvent,必须在
onTouchEvent
方法中返回true
.source