如何在editText聚焦时隐藏键盘

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在editText聚焦时隐藏键盘相关的知识,希望对你有一定的参考价值。

我希望editText框可单击,以便用户可以滚动文本,但我不希望键盘出现。我尝试了所有这些,但他们没有做我想要的:

在XML中:

android:editable="false"
android:windowSoftInputMode="stateAlwaysHidden"
android:inputType="none"

这会禁用它:

editText.setInputType(EditorInfo.TYPE_NULL); 

这仅适用于API 21及更高版本:

editText.setShowSoftInputOnFocus(false);
答案

试试这个

<EditText
        android:id="@+id/et_file_url"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="none"
        android:lines="1"
        android:textIsSelectable="true" />
另一答案

使用这些代码行

  EditText editText= (EditText) findViewById(R.id.editText);
  InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
  imm.hideSoftInputFromWindow(editText.getWindowToken(), 0);
另一答案

在触摸侦听器上设置编辑文本。这将使编辑文本无法触及,因为它被设置为返回true。

   EditTextHere.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
          return true;
        }
    });

声明它允许用户通过将其返回false来触摸编辑文本。

以上是关于如何在editText聚焦时隐藏键盘的主要内容,如果未能解决你的问题,请参考以下文章

从选项卡式片段导航时,如何避免聚焦最后一个 EditText?

聚焦时如何隐藏edittext的线条颜色

处理 EditText 未聚焦状态时的物理键盘按键事件

在自定义适配器中隐藏软键盘

在片段替换上显示/隐藏 Android 软键盘

硬键盘无法聚焦editText