在这次实践中,它抖动得不正常,太不正常,太抖。

其实是我代码上出现了问题,记录一下。

我是怎么设置滑动的呢?

通过改变view的margin。

然而我在onTouchEvent中怎么控制它滑动的大小呢?

我获取的是event.getY()。

而event.getY()获取的是相对距离,也就是说坐标是相对于我们手指下的那个view来说的,是相对坐标。

而这个view又跟随着手指的滑动,通过改变margin的方式,margin一旦改变,那么坐标也跟着改变,于是getY就出现了异常。

所以我们不应该用getY()。

而是要用getRawY()。这个方法是相对于屏幕来说的,是绝对坐标。

05-11 19:58