【发布时间】:2015-09-03 07:55:24
【问题描述】:
我试图在 Android 中获取视图的开始和结束坐标以创建动画。
我尝试了 OnTouch 事件,但我只能访问初始坐标。
我尝试使用 MotionEvent,但没有成功。
public boolean onTouch(View v, MotionEvent event)
{
float x = event.getX();
float y = event.getY();
//Log.d("S&R", "Y "+y);
switch (event.getAction() & MotionEvent.ACTION_MASK)
{
case MotionEvent.ACTION_DOWN:
Log.d("S&R", "ACTION_DOWN");
break;
case MotionEvent.ACTION_UP:
Log.d("S&R", "ACTION_UP");
break;
case MotionEvent.ACTION_MOVE:
Log.d("S&R", "ACTION_MOVE");
break;
}
return false;
}
我只想知道触摸是从上到下还是从下到上。
我该怎么做?
谢谢。
【问题讨论】:
-
on touch 给 u x & y 坐标的变化是它们的值可以很容易地解决这个问题。例如:浮动 yAxis = 0.0f; yAxis = event.getRawY()
-
有点hacky,但你可以这样做:将第一个值保存为你触摸时,&当移动开始时与初始值比较,增加或减少将指示向上或向下
-
感谢您的回答。问题是 ACTION_MOVE 永远不会启动,总是 ACTION_DOWN。
标签: android events view coordinates ontouch