隐藏Android软键盘,仅允许EditText上的数字

威灵

我有一个自定义键盘,不想显示Android软键盘。这可以通过以下代码来实现(如何在EditText上隐藏Android软键盘):

editText.setInputType(InputType.TYPE_NULL);

但是,EditText应该只允许数字。这可以通过以下方式实现:

editText.setInputType(InputType.TYPE_CLASS_NUMBER);

我似乎找不到结合两种功能的方法。将输入类型设置为TYPE_NULL会在使用硬件键盘时允许非数字字符,而将输入类型设置为TYPE_CLASS_NUMBER会导致软键盘弹出。

威灵

airowe的回答引导了我正确的方向。该解决方案似乎不适用于Android 2.3.X设备(仍然会弹出软键盘)。所以我做了一些调整。我最终使用了以下代码:

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(editText.getWindowToken(), 0); //hide keyboard

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
{
   editText.setInputType(InputType.TYPE_CLASS_NUMBER);
}
else
{
   editText.setRawInputType(InputType.TYPE_NULL);
}

这可能会允许蜂窝前平板电脑输入文本。但是我认为这可以忽略不计。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

android中的软键盘隐藏了EditText

来自分类Dev

单击外部EditText后如何在android上隐藏软键盘?零碎地

来自分类Dev

停止 setText() 在 EditText 上显示 Android 软键盘

来自分类Dev

软键盘在EditText上

来自分类Dev

android软键盘覆盖EditText集中

来自分类Dev

如何隐藏Android软键盘?

来自分类Dev

Android软键盘隐藏RecyclerView

来自分类Dev

如何将软键盘隐藏在EditText的“确定”上并再次显示

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

隐藏软键盘以进行EditText焦点/触摸

来自分类Dev

软键盘在多行EditText下隐藏按钮吗?

来自分类Dev

列表视图底部的Edittext被软键盘隐藏

来自分类Dev

打开软键盘时,片段中的EditText被隐藏

来自分类Dev

为什么EditText隐藏在软键盘后面

来自分类Dev

打开软键盘时,片段中的EditText被隐藏

来自分类Dev

隐藏软键盘以进行EditText焦点/触摸

来自分类Dev

软键盘覆盖editText

来自分类Dev

软键盘覆盖editText

来自分类Dev

软键盘不会隐藏

来自分类Dev

仅显示字母数字键显示软键盘?

来自分类Dev

隐藏软键盘不适用于Android上的onFocusChangeListener

来自分类Dev

在应用程序简历上隐藏软键盘

来自分类Dev

如何在单选按钮上隐藏软键盘

来自分类Dev

Android单击EditText不会显示软键盘

来自分类Dev

Android EditText setText导致软键盘冻结

来自分类Dev

Android单击EditText不会显示软键盘

来自分类Dev

隐藏软键盘后,Android应用不会刷新

来自分类Dev

在活动状态onStop上关闭/隐藏Android软键盘