Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 编辑文本:抑制软键盘,但允许选择和光标?_Android_Android Edittext_Android Softkeyboard - Fatal编程技术网

Android 编辑文本:抑制软键盘,但允许选择和光标?

Android 编辑文本:抑制软键盘,但允许选择和光标?,android,android-edittext,android-softkeyboard,Android,Android Edittext,Android Softkeyboard,我想显示一个EditText,它主要通过选择部分内容并按下按钮插入新值来编辑。(这些值是长的十六进制字符串,我不希望用户必须键入。)因此,我想抑制软键盘的显示,除非用户有意调用它 描述了几乎完全相同的需求,但不适用于Android 5.1。当输入模式更改为InputType.TYPE_NULL时,EditText将禁用所有编辑功能,而不仅仅是软键盘。没有光标,没有点击拖动选择,等等 中建议的重写onCheckIsTextEditor(),其行为方式相同 有没有办法在Android 5上实现这一点

我想显示一个
EditText
,它主要通过选择部分内容并按下按钮插入新值来编辑。(这些值是长的十六进制字符串,我不希望用户必须键入。)因此,我想抑制软键盘的显示,除非用户有意调用它

描述了几乎完全相同的需求,但不适用于Android 5.1。当输入模式更改为
InputType.TYPE_NULL
时,
EditText
将禁用所有编辑功能,而不仅仅是软键盘。没有光标,没有点击拖动选择,等等

中建议的重写
onCheckIsTextEditor()
,其行为方式相同


有没有办法在Android 5上实现这一点?

这是在API 21中添加的:

EditText editText = (EditText) findViewById(R.id.edittext);
editText.setShowSoftInputOnFocus(false);

根据,自版本4.1.1以来,该方法一直存在但隐藏。因此,您可以将调用它的方法注释为
@TargetApi(Build.VERSION\u CODES.LOLLIPOP)
,并使用
if(Build.VERSION.SDK\u INT>=Build.VERSION\u CODES.JELLY\u BEAN)
保护调用本身。选择部分文本时,从屏幕顶部打开一个类似抽屉的视图,其中有“全选”、“剪切”和“粘贴”按钮。我可以接受。我编辑了答案,以解释它在较低API上工作的真正原因。它与支持库无关。