我正在使用 Java SDK 在 HarmonyOS 中创建一个自定义组件,我必须在其中双击执行一些任务。但我无法检测到双击事件。
在 Android 中,借助GestureDetector类,我们可以检测双击事件,如下所示:
GestureDetector gestureDetector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener(){
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
return super.onSingleTapConfirmed(e);
}
@Override
public boolean onDoubleTap(MotionEvent e) {
return super.onDoubleTap(e);
}
});
在 HMOS 中,我尝试使用Component.TouchEventListener检测双击,如下所示:
Component.TouchEventListener touchEventListener = new TouchEventListener() {
@Override
public boolean onTouchEvent(Component component, TouchEvent touchEvent) {
if(touchEvent.getPointerCount() == 1) {
LogUtil.info(TAG, "single click detected");
}
if(touchEvent.getPointerCount() == 2) {
LogUtil.info(TAG, "double click detected");
}
return false;
}
};
但是,它没有检测到双击。在双击时,它也打印了单次点击检测。