如何在投掷时禁止EditText的“编辑文本”对话框?

时间:2012-05-06 11:17:43

标签: android android-edittext gesture

我在EditText字段上实现SimpleOnGestureListener,允许右/左投掷。这是监听器代码:

class MyGestureDetector extends SimpleOnGestureListener {
    @Override
    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {

        // my fling code

    }

    // It is necessary to return true from onDown for the onFling event to register
    @Override
    public boolean onDown(MotionEvent e) {
        return true;
    }
    @Override
    public void onLongPress(MotionEvent e) {
            Log.i("MyApp", "long press");
    }
}

这样可以正常工作,但它会抑制我所假设的Android内部“编辑文本”对话框,该对话框允许选择文本。如果我删除了onDown覆盖,则“编辑文本”对话框会显示为向左或向右投掷。

如何制作它以便“编辑文本”对话框仅在长按时显示?

日志显示在fling事件中onLongPress未被触发,因此由于某种原因,fling也会触发“编辑文本”对话框。我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

确保它不会得到焦点。在这里查看示例:https://stackoverflow.com/a/5206580/969325