0

这就是我想要做的。我正在尝试使用我的 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  

但这也行不通。

4

1 回答 1

0

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

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

问候。

于 2012-11-24T17:06:35.023 回答