我尝试用
隐藏默认的软键盘 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
但是当我点击EditText时键盘再次出现
我也试过
input.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
和
android:imeOptions="flagNoExtractUi"
没有结果, 单击EditText时,键盘始终显示。
如果我将inputType设置为null,则不显示keybard,但editText变得无法使用,因为我无法再选择或移动光标,也无法复制粘贴任何内容
任何解决方案?
答案 0 :(得分:2)
如果您不希望键盘出现,请使用以下代码:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
通过这种方式,android软键盘将始终隐藏,您可以正常使用光标,选择复制粘贴等。
答案 1 :(得分:0)
设置无提取ui将无效,这意味着不显示手机在横向显示的大型全屏视图。键盘仍然会出现。
永久关闭键盘没有api。如果你想这样做,我会使用android:editable = false,那么你必须自己处理所有文本设置(因为你没有使用真正的输入法)。
答案 2 :(得分:0)
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);
其中 editText 是您的EditText组件的名称。