0

我正在尝试创建一个简单的应用程序来跟踪用户在屏幕上的手势。现在,使用单点触摸手势可以很简单地通过在您的OnTouchEvent方法中使用以下代码来实现:

switch (event.getAction()) 
        {
            case MotionEvent.ACTION_DOWN:
              path.reset();
              this.invalidate();
              path.moveTo(eventX, eventY);
              path.addCircle(eventX, eventY, 50, Path.Direction.CW);
              return true;
            case MotionEvent.ACTION_MOVE:
              path.lineTo(eventX, eventY);
              break;
            case MotionEvent.ACTION_UP:

              break;
            default:
              return false;
        }

[该addcircle方法简单地创建一个圆圈,表示用户最初放置手指的位置]。

现在,是否可以通过多点触控手势实现同样的效果?如果是这样,我将如何去做?提前致谢。

4

2 回答 2

0

您可能需要阅读文档中的处理多点触控手势章节。

本质上,everyMotionEvent也有一个指针,它允许跟踪多个手指。您必须自己完成所有状态处理。

如果你想实现一些常见的东西,看看GestureDetector,它支持轻击、轻敲、双击和滚动。

于 2013-05-13T12:38:06.623 回答
0

好的,所以我最终找到了解决方案。这不是我想要的,但它是迄今为止我得到的最接近的。ArrayList本质上,我保留了一个包含用户手指所有坐标的二维空间(最多四个手指)。在用户完成他们的手势后,我开始另一个贯穿 2D 的活动ArrayList并将所有点绘制到画布上。如果有人想要这个解决方案的更多细节,只需发表评论,我可以添加一些代码并更深入地解释。

于 2013-05-16T14:56:25.003 回答