如何从触摸android中检测手指拇指,食指,中指,指环,小指的类型

时间:2013-07-15 17:57:25

标签: android

在我的应用程序中,我想检测按在屏幕上的手指类型。触摸的类型可能是单触或多点触摸。我搜索了很多,但找不到任何东西。

有没有找到类型的方法?

2 个答案:

答案 0 :(得分:1)

没有办法知道哪个手指处于特定点,但您当然可以获得每个触摸事件的位置。给定MotionEvent,您可以这样做:

 int pointerId = event.getPointerId(0);
 int pointerIndex = event.findPointerIndex(pointerId);
 float x = event.getX(pointerIndex);
 float y = event.getY(pointerIndex);

每个手指触摸屏幕时,pointerId都是唯一的。

从那里你需要做一些复杂的分析来猜测手指。如果只有一根手指触摸屏幕,那么可能是食指。如果有两个,那么根据触摸的移动方式,猜测它是食指和拇指或食指和中指是合理的;如果它们越来越近或越远,它可能是指数+拇指。如果有3个手指,它可能是指数+中间+环等等。

真的,沿着那条线的东西是你能做的最好的,而且肯定不会很准确。

答案 1 :(得分:0)

无法知道用户使用哪种类型的手指(拇指,索引...),但您可以检测单次/多次触摸。 this可能会对您有所帮助。