2012-06-24 40 views
0

我正在使用ApiDemos中的FingerPaint示例在屏幕上绘制我的手指运动。在android中删除了触摸事件

现在,而不是行,我在我的路径对象中添加圆形,并且当调用onDraw方法时,将绘制此圆形路径。

现在我的问题是,当我慢慢地移动手指时,它正确地绘制了由onTouchEvent给出的点的圆圈,但是当我用一些速度移动手指时,与线不同,它只画几圈。

调试完成后,我发现在快速移动手指的同时,某些触摸事件会被视图拖放,并且在该点上圆形不会被绘制。

任何人都可以提供一些关于此的指针。为什么发生这种情况?

回答

0

我能想到的两件事情,没有看到代码。

首先,你是否获得touchEvents之间记录的历史要点并使用它们?如果没有,那会导致一些严重的急动,就像你正在谈论的那样。

如果你是,而只是没有选择它们,你能做的最好的可能就是欺骗它。检查绘制的当前和最后一个圆之间的距离。如果它超过圆的直径,画一条与圆相同厚度的线,两端都有一个圆圈。