【发布时间】:2016-06-14 09:56:35
【问题描述】:
我有一个 Android EditText,我想让数字键盘出现。
如果我将android:inputType 设置为numberdecimal|number,我将获得数字键盘以及输入小数和数字的能力。但它可以输入'.00222''0000'else,这不是我想要的,如果我在android 4.4.2 编译项目并且它可以正常工作,但是使用Android 6.0,这不是我的预期。
如何获得能够在Android 6.0 中输入小数和数字的数字键盘?
【问题讨论】:
-
AFAIK 除了验证输入之外别无他法...
android:inputType只是一个提示...而且由于您可以在 android 上使用自定义键盘,因此没有通用的方法可以做到这一点.. . 尝试自己验证每个文本更改的输入 -
“如果我将 android:inputType 设置为 numberdecimal|number,我将获得数字键盘以及输入小数和数字的能力”——不一定。有数千种 Android 设备型号。它们附带数百个软键盘,用户可以从 Play 商店安装其他软键盘。正如 Selvin 所说,
android:inputType是一个提示,而不是一个要求。每个键盘对您想要的inputType的作用取决于键盘的开发人员,而不是您。 -
您可以在 edittext 上设置 textWatcher 并在 afterTextChanged 函数中检查输入。如果用户键入任何不适合您需求的字符,则删除最后一个字符并将光标移回一个字符。
标签: android android-edittext numbers decimal