Android - 跟踪要绘制的实时触摸事件

时间:2014-10-15 15:16:49

标签: java android touch real-time android-drawable

我需要你的帮助。

我正在尝试实施具有实时跟踪的绘图系统,您可能会想:“实时跟踪?你什么意思?“

所以我正在实施一个解决方案来跟踪显示器上的每个触摸移动,所以我可以决定,如果我想要在特定的位置上绘画,这个决定必须是实时的,当用户触摸时显示。

会有一些图像,用户应在相应形状内部绘制内部空白区域;图1显示了这种形状的一个例子。

Figure 1

用户应按特定方向/顺序绘制形状内部;我仍然不知道如何在图像中配置此顺序/方向。特定订单的示例如图2所示。

Figure 2

所以我希望用户从区域1开始绘制到区域6,你明白吗?我不希望用户能够绘制区域1然后区域3,而不先绘制区域2 ...

最后,我会把形状填满,如图3所示。箭头就是为了显示正确的绘图方向。

Figure 3

这不仅仅是关于方向,图像上的特定斑点,还有不同类型的图像,我不能只使用方向。

如何确定具有特定订单要绘制的图像中的特定位置?

我想到的唯一想法是某种培训模式,我(开发人员)会按照我想要的顺序绘制图像,后面的系统会在代码上创建虚拟点,每个人之间的距离很小。然后我会有一个数组,其中所有的“点”都按照我绘制的顺序保存,你明白吗?

我不知道这是否有效,以及当用户试图在图像上绘制时,它是否足以快速移动我的“斑点”阵列?因为我希望它能够实时工作,所以当用户触摸显示器时,系统应检查它是否是正确绘制的有效位置...

你觉得它会起作用吗?你对此有什么建议吗?什么是最好的结构和类似的东西?我不是要求编写代码,我只需要一些指导。

我想我很好地解释了我的问题,如果您有任何疑问,请问我。

非常感谢你!

1 个答案:

答案 0 :(得分:1)

如果你的所有形状都是线条,你就可以对待你希望用户使用的点数"触摸"作为正方形,每次ACTION_MOVE事件发生时,检查手指是否正在触摸下一个点。您可以制作任何适合您的方块大小,例如48dp或92dp或您正在绘制的形状的宽度/高度。

你说你不想要任何代码,所以我假设你知道怎么做(如果没有回复,我也会发布代码)。

另外你没有提到如果用户走出形状会发生什么,如果你希望用户继续绘图直到他们举起手指然后这种方式很好,当ACTION_UP事件发生时检查是否触摸了最后一个点(假设只有在触及所有其他点时才能触摸它),如上所述。

如果您想要一个视觉指南,请参阅以下图片: enter image description here

显然,如果你这样做,你必须计算你将拥有的每个点的位置,我怀疑有任何方法可以实现自动化。

如果您需要更多帮助或需要一些代码请回复,我会发布一些! :d

相关问题