EditText.setInputType和setRawInputType有什么区别。

我有一个应该允许所有字符的字段,但是我有一个模式按钮,可以在数字键盘和字母键盘之间切换。

因此,在数字键盘为“零件号”搜索模式时,我希望使用数字键盘,而在数字键盘是“描述”搜索模式时,则为字母键盘。

Android OS 2.2或更高版本。

最佳答案

setRawInputType()通常在初始化 View 时,在自定义 View 的构造函数中或在 Activity 的onCreate()方法等中使用。这与使用XML属性android:inputType设置inputType相同。例如:

setContentView(R.layout.main);
mEditText = (EditText) findViewById(R.id.edit_text);
mEditText.setRawInputType(InputType.TYPE_CLASS_NUMBER);
...

根据您的情况更改为编辑器显示的软键盘的模式
您必须立即调用setInputType(),它也需要重新启动软键盘。
setInputType(InputType.TYPE_CLASS_NUMBER)将键盘布局更改为数字文本setInputType(InputType.TYPE_CLASS_TEXT)将键盘布局更改为普通文本

10-07 19:35