1

我正在开发一个科学应用程序,并且我有一个 EditText,我必须在其中输入一个输入数值,所以 inputType 是“number|numberSigned|numberDecimal”,但问题是当我想输入一个科学记数法数字时,例如“45.6 E05”,由于 EditText 的 InputType,我无法输入“E”字符。

如何在 EditText 聚焦时允许“E”字符并且只显示数字键盘?

4

1 回答 1

3

没有办法显示带有额外字母的数字键盘,E解决此问题的两种方法是制作一个输入编辑文本的按钮E或使用如下android:digits属性:

android:digits="1234567890E."

括号中的所有字符都是您希望用户能够输入的字符

要使用按钮进行操作,onClickListener您只需在其中输入以下代码

edittext.setText(edittext.getText().toString() + "E"

另一方面,如果你想在光标位置插入字符,那么你应该试试这个(取自这里

int start =edittext.getSelectionStart();
String s = "E";
edittext.getText().insert(start, s);
于 2012-11-29T22:16:37.857 回答