gpt4 book ai didi

java - onDoubleTap 监听器和 onDoubleTapEvent 监听器有什么区别

转载 作者:太空狗 更新时间:2023-10-29 13:11:09 24 4
gpt4 key购买 nike

我是 Android 的新手,最近学习了手势!

这两种方法有什么区别?

@Override
public boolean onDoubleTap(MotionEvent e) {
return false;
}

还有这个

@Override
public boolean onDoubleTapEvent(MotionEvent e) {
return false;
}

他们似乎在做同样的事情。你用的是哪一个,有什么区别

最佳答案

简单的答案是

 boolean onDoubleTap (MotionEvent e) - 

发生双击时收到通知。

您可以在双击时发出通知 而param motionEvent是为第一次点击的down motion事件。

  boolean onDoubleTapEvent (MotionEvent e)` -

双击手势中的事件发生时通知

您可以在双击手势发生时通知事件,包括 downmoveup 事件以及参数 motionEvent 用于运动事件

因此,使用 doubleTapEvent,您可以在点击时获得额外的 Tab 手势

看看--> https://stackoverflow.com/a/19629851/5188159这可能对您的触摸手势有帮助

进一步尝试理解这个例子中发生了什么

//initialize the Gesture Detector  
gd = new GestureDetector(this);

//set the on Double tap listener
gd.setOnDoubleTapListener(new OnDoubleTapListener()
{
@Override
public boolean onDoubleTap(MotionEvent e)
{
//set text color to green
tvTap.setTextColor(0xff00ff00);
//print a confirmation message
tvTap.setText("The screen has been double tapped.");
return false;
}

@Override
public boolean onDoubleTapEvent(MotionEvent e)
{
//if the second tap hadn't been released and it's being moved
if(e.getAction() == MotionEvent.ACTION_MOVE)
{
//set text to blue
tvTapEvent.setTextColor(0xff0000ff);
//print a confirmation message and the position
tvTapEvent.setText("Double tap with movement. Position:\n"
+ "X:" + Float.toString(e.getRawX()) +
"\nY: " + Float.toString(e.getRawY()));
}
else if(e.getAction() == MotionEvent.ACTION_UP)//user released the screen
{
tvTapEvent.setText("");
}
return false;
}

@Override
public boolean onSingleTapConfirmed(MotionEvent e)
{
//set text color to red
tvTap.setTextColor(0xffff0000);
//print a confirmation message and the tap position
tvTap.setText("Double tap failed. Please try again.");
return false;
}
});

关于java - onDoubleTap 监听器和 onDoubleTapEvent 监听器有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40820735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com