如何检测android双击?

如何检测android双击?,android,double-click,tap,Android,Double Click,Tap,如何检测android中的双击?我实现了OnDoubleTapListener并编写了以下代码: public boolean onDoubleTapEvent(MotionEvent e) { // TODO Auto-generated method stub if(e.getAction() == 1){ Toast.makeText(getApplicationContext(),"Double Tap", Toast.LENGTH

如何检测android中的双击?我实现了OnDoubleTapListener并编写了以下代码:

public boolean onDoubleTapEvent(MotionEvent e) {
        // TODO Auto-generated method stub
        if(e.getAction() == 1){
            Toast.makeText(getApplicationContext(),"Double Tap", Toast.LENGTH_SHORT).show();
        }
        return true;
    }
但它不起作用。这有什么问题

public class GestureDoubleTap extends GestureDetector.SimpleOnGestureListener {

    @Override
    public boolean onDoubleTap(MotionEvent e) {
        //some logic
        return true;
    }

}


尝试移除if块,并在收到事件时干杯。这将让我们知道侦听器是否正确连接。我删除了if块并再次测试。我仍然看不到双击的祝酒词。@Emmanuel:是的,谢谢,我看到了给出的帖子,但我不理解给出的代码作为答案。他为此创建了一个新类。我需要的是在我的活动中进行。我在android方面没有太多的经验,如果这是愚蠢的话,我很抱歉。谢谢,但是有没有办法在不创建单独的类作为GestureDoubleTap的情况下执行此内部活动?匿名类而不是单独的类作为GestureDoubleTap,否则,我很抱歉我不知道。这里还有一个问题如何识别特定图标?使用MotionEvent我们可以获得X和Y坐标,但使用该坐标,如何获得具有双击的确切图标?首先,一个图标,一个视图。第二,如果一个视图有多个图标。您必须知道每个图标的大小。或者,左点。因此,在onDoubleTap()中,您只需执行一些逻辑来计算哪个图标的X和Y。
GestureDoubleTap gestureDoubleTap = new GestureDoubleTap();
gestureDetector = new GestureDetector(this/* context */, gestureDoubleTap);

view.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View view, MotionEvent motionEvent) {
        return gestureDetector.onTouchEvent(motionEvent);
    }

});