如何在软键盘显示时隐藏EditText软键盘?
问题描述:
这里的情况:我显示的屏幕有4个输入字段,其中2个需要用户(数字字段),其他(文本字段)编辑 - 显示一些文本信息,用户可以通过ListView更改,但它关闭以进行手动编辑。 我在我的XML文件android:editable="false"
中使用非数字EditText字段,它有助于在用户点击字段时禁用软键盘弹出。但问题出在用户编辑数字字段时,软键盘不能在用户关注文本字段后隐藏。如何在软键盘显示时隐藏EditText软键盘?
那么当用户关注我的文本字段时,如何隐藏已经显示的软键盘?
的方法,如:
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(MEdit1.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
或像这样
MetricEdit = (EditText) findViewById(R.id.MetricEdit);
MetricEdit.setInputType(0);
采取任何影响。
提前感谢您的时间。
答
尝试把
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(MEdit1.getWindowToken(), 0);
在onclicklistener为可编辑
,你还可以改变数字的EditText的键盘有一个“做”在底部用以下的EditText:
android:imeOptions="actionDone"
in the xml for edittext
答
这将他lp ..
edittext.setInputType(InputType.TYPE_NULL);
if (android.os.Build.VERSION.SDK_INT >= 11)
{
edittext.setRawInputType(InputType.TYPE_CLASS_TEXT);
edittext.setTextIsSelectable(true);
}
凯文感谢您的想法,但这段代码没有解决问题。当用户选择其他文本字段时,我仍然需要自动隐藏软键盘。 – Dimon
在每个edittext onclicklisteners中,您可以为每个其他edittext执行hidesoftinputfromwindow行,以便所有可能的键盘都将被关闭,除了刚刚打开的键盘。这个对我有用。 –
哦,现在终于有效了。这是我注意力不集中的地方,我在onCreate void这些行的开始处发布了这些消息,但是在我将onClickListener替换为每个EditText后,一切正常。谢谢凯文。 – Dimon