Java 如何检测正在使用的手指数?

Java 如何检测正在使用的手指数?,java,android,libgdx,touch,Java,Android,Libgdx,Touch,我正在使用Libgdx制作一个游戏,我需要知道用户是否使用了两个手指,以及它们是否放置在正确的位置。一个手指应位于屏幕右侧,另一个手指应位于屏幕左侧 如何检测正在使用的手指数 您可以使用getPointerCount() 您可以检测屏幕上有多少手指在执行此操作: int PointerCount = event.getPointerCount(); 我需要知道用户是否使用两根手指,以及它们是否放置在正确的位置 你可以得到X,Y并进行比较 @Override public boolean onT

我正在使用Libgdx制作一个游戏,我需要知道用户是否使用了两个手指,以及它们是否放置在正确的位置。一个手指应位于屏幕右侧,另一个手指应位于屏幕左侧

如何检测正在使用的手指数

您可以使用
getPointerCount()

您可以检测屏幕上有多少手指在执行此操作:

int PointerCount = event.getPointerCount();
我需要知道用户是否使用两根手指,以及它们是否放置在正确的位置

你可以得到X,Y并进行比较

@Override
public boolean onTouch(View v, MotionEvent event) {
   int x = event.getX();
   int y = event.getY();
   return true;
}

有关更多信息,您可以查看,以便获得所需信息。

无论是
手势监听器
还是
输入处理器
都有
触地
方法。屏幕上每个手指的x和y值(指针)。执行其中任何一项,您都可以覆盖着陆以满足您的需要。这是一个很好的入门教程。希望这能有所帮助。

不使用任何侦听器的最简单解决方案就是迭代一些指针计数,然后调用simple
Gdx.input.isTouched()
-您必须设置一些“最大指针计数”,但是嘿-人们通常只有20个手指:)


然后你可以把它放到数组中

x和y将得到手指的坐标,那么第二个手指呢?手指应同时在屏幕上。我的意思是,如果两个手指同时触摸屏幕,我如何获得它们的坐标?我使用的是libgdx,我不能使用MotionEvent类,是的-查看我在答案中附加的方法引用(橙色文本块),如果我不想实现InputListerner,toucdown()方法有一个指针参数,如何使用该指针变量来选择要使用的指针/手指。
    final int MAX_NUMBER_OF_POINTERS = 20;
    int pointers = 0;

    for(int i = 0; i < MAX_NUMBER_OF_POINTERS; i++)
    {  
        if( Gdx.input.isTouched(i) ) pointers++;
    }

    System.out.println( pointers );
    final int MAX_NUMBER_OF_POINTERS = 20;
    int pointers = 0;

    for(int i = 0; i < MAX_NUMBER_OF_POINTERS; i++)
    {  
        if( Gdx.input.isTouched(i) )
        {
            x = Gdx.input.getX(i);
            y = Gdx.input.getY(i)
        }
    }