EditText - 在保留选择句柄的同时隐藏动作模式?

时间:2016-01-30 00:25:05

标签: android android-edittext

每当用户在EditText中执行长按或双击时,我都想隐藏动作模式。

我尝试使用此代码执行此操作,但也禁用了选择句柄(无法在EditText上执行文本选择):

e.setCustomSelectionActionModeCallback(new Callback() {


    @Override
    public boolean onPrepareActionMode(android.view.ActionMode mode, Menu menu) {
        return true;
    }

    @Override
    public void onDestroyActionMode(android.view.ActionMode mode) {
    }

    @Override
    public boolean onCreateActionMode(android.view.ActionMode mode, Menu menu) {
        return false;
    }

    @Override
    public boolean onActionItemClicked(android.view.ActionMode mode, MenuItem item) {
        return false;
    }
});

有没有办法隐藏动作模式,同时在EditText上保留文本选择?

1 个答案:

答案 0 :(得分:0)

我找到的唯一方法是:

editText.setCustomSelectionActionModeCallback(new ActionMode.Callback() {
        @Override
        public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
            menu.clear();
            return true;
        }

        @Override
        public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
            menu.clear();
            return true;
        }

        @Override
        public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
            return false;
        }

        @Override
        public void onDestroyActionMode(ActionMode actionMode) {

        }
    });

但它不适用于Android< 5.0。我还在寻找替代方案