Android:单击和长按/双击的两个不同事件?

标签 android events listener tap

我正在尝试开发一项功能,在该功能中,单击一个项目将调用 Intent 以转到另一个 Activity,长按或双击该项目会执行其他操作,例如允许您编辑文本。

到目前为止,我只能让两者同时发生,但不能单独发生。有人有什么想法吗?

public boolean onTouchEvent(MotionEvent e) {
    return gestureScanner.onTouchEvent(e);
}


public boolean onSingleTapConfirmed(MotionEvent e) { 
    Intent i = new Intent(getContext(), SecondClass.class);
    getContext().startActivity(i);

    return true; 
}

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { return false; }
public void onLongPress(MotionEvent e) {
    Toast.makeText(getContext(), "Edit feature here", Toast.LENGTH_SHORT).show();

}

最佳答案

我设法解决了这个问题。结果我需要做的就是在 onDown() 处理程序中将返回值从 false 更改为 true

public boolean onTouchEvent(MotionEvent e) {
    return gestureScanner.onTouchEvent(e);
}

public boolean onSingleTapConfirmed(MotionEvent e) { 

    Intent i = new Intent(getContext(), SecondClass.class);
    getContext().startActivity(i);

    return true; 
}

public boolean onDown(MotionEvent e) { return true; }


public void onLongPress(MotionEvent e) {
    Toast.makeText(getContext(), "Edit Feature", Toast.LENGTH_SHORT).show();

}

关于Android:单击和长按/双击的两个不同事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13324250/

相关文章:

javascript - 检测 div 中的更改并重新绑定(bind)事件 jQuery

android - 如何同时处理 OnTouchListener 事件和 OnClickListener 事件

java - 检测文本控件中的插入符号移动

java - 日期更改监听器

android - 在Android应用程序中整合Flury广告的步骤

android - 使用扩展的 SearchView 删除操作栏的图标/标题?

javascript - jQuery DataTables - 行点击不在第一页以外的页面上注册

Android SurfaceTexture.detachFromGLContext 在 detachFromGLContext 期间出错

空对象引用上的 android.os.Looper android.content.Context.getMainLooper()

python - pygame 模块 'pygame.event.get()' 不适用于方法吗?