Я хочу обнаружить doubletap
в представлении, например, как button
, а затем узнать, какой вид он был. Я видел этот похожий вопрос, но вопрос, который, по их словам, является дубликатом, кажется, не отвечает на мой вопрос.
Все, что я могу find, - это добавить GestureDetector
к активности и добавить к ней OnDoubleTapListener
. Но это срабатывает только при нажатии на фон/макет моего экрана. Он не срабатывает, когда я (дважды) коснусь button
.
Это код, который у меня внутри onCreate
:
gd = new GestureDetector(this, this);
gd.setOnDoubleTapListener(new OnDoubleTapListener()
{
@Override
public boolean onDoubleTap(MotionEvent e)
{
Log.d("OnDoubleTapListener", "onDoubleTap");
return false;
}
@Override
public boolean onDoubleTapEvent(MotionEvent e)
{
Log.d("OnDoubleTapListener", "onDoubleTapEvent");
//if the second tap hadn't been released and it being moved
if(e.getAction() == MotionEvent.ACTION_MOVE)
{
}
else if(e.getAction() == MotionEvent.ACTION_UP)//user released the screen
{
}
return false;
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e)
{
Log.d("OnDoubleTapListener", "onSingleTapConfirmed");
return false;
}
});