阻止EditText contextMenu

时间:2012-07-17 08:19:24

标签: java android android-edittext textselection

我想创建一个包含以下更改的EditText:

  1. 点击它将不会显示键盘
  2. 在SINGLE之后,SHORT点击它将进入选择模式(当我说选择模式时,我指的是你可以选择文本部分的模式(有两个指针)。你可以通过长按指示进入这个模式文本。)
  3. 选择文本后,将不会显示复制/粘贴/剪切工具栏
  4. 对于第一个,我想我可以创建一个OnTouchListener并立即返回true,但是它会阻止我做第二件事(我不知道该怎么做)。

    我找了一个让EditText进入选择模式的命令,但我找到的只是一种从中获取所选文本的方法......

    谢谢!

    编辑:我成功制作了1和2,但工具栏仍然显示(尝试unregisterForContextMenu

1 个答案:

答案 0 :(得分:0)

您可以使用edittex.setCustomSelectionActionModeCallback

setCustomSelectionActionModeCallback(new Callback() {
        public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
            return false;
        }

        public void onDestroyActionMode(ActionMode mode) {                  
        }

        public boolean onCreateActionMode(ActionMode mode, Menu menu) {
            return false;
        }

        public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
            return false;
        }
    });

这将阻止打开edittex的上下文菜单