【问题标题】:Mutli Touch Query in Android. Detecting when fingers have been released?Android 中的多点触控查询。检测手指何时松开?
【发布时间】:2012-11-24 16:39:05
【问题描述】:

这就是我想要做的。我正在尝试使用我的 android 触摸板复制 Alt+Tab 功能。 我的计算机上运行着一个 java 服务器,而我的 Nexus 7 上运行着一个 android 应用程序,它向服务器发送某些触摸事件。

当用户用 3 根手指触摸触摸屏时,我告诉服务器按下 alt 键。

     if(event.getPointerCount()==3)
     // Send message to server to hold alt key down

现在,当用户移动一定距离时,我会告诉服务器按下并释放 Tab 键。即shift改变当前窗口。

这是我遇到故障的地方。 当用户释放所有 3 个手指时,我想告诉服务器释放 Alt 键,从而完成该过程。
我该怎么做? 我尝试使用

if(event.getAction()==MotionEvent.ACTION_POINTER_2_UP && event.getAction()== MotionEvent.ACTION_POINTER_3_UP && event.getAction()== MotionEvent.ACTION_POINTER_1_UP)
//Release alt key

但是没有用。

基本上,我想检测用户何时从触摸屏上松开了所有 3 个手指

更新 1。

我也尝试过使用

if(event.getPointerCount()==0)
       //send message  

但这也不行。

【问题讨论】:

    标签: android multi-touch


    【解决方案1】:

    您的第一次尝试不起作用,因为它需要在同一事件中接收 MotionEvent.ACTION_POINTER_n_UP,而这永远不会发生。您会一一收到。

    您的第二次尝试应该会奏效。如果它不起作用,则问题应该出在代码逻辑的其他部分。如果您想要更具体的答案,最好发布它。

    问候。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-23
      • 2015-10-02
      • 2016-01-27
      • 1970-01-01
      • 2019-02-16
      • 2012-04-12
      • 1970-01-01
      相关资源
      最近更新 更多