三星 A50 的 EditText 输入类型问题

EditText inputType problems with Samsung A50

这适用于大量 phone 型号列表,但三星 A50 除外:

<EditText
    ...
    android:digits="0123456789-"
    android:inputType="numberDecimal" />

这是 "hotfix" 解决方法:

<EditText
    ...
    android:digits="0123456789-"
    android:inputType="phone" />

除了它是三星之外,还有其他关于失败原因的想法吗?

您可以使用以下更准确的方式实现此目的:

android:digits="0123456789-"
android:inputType="numberSigned"

A​​50S 的输出

不同的制造商做不同的事情,其中​​一些制造商将关于 GUI 应该如何显示的规则仅仅作为建议(我看到类似的问题发生在一些华为设备上)

我建议在用户输入后用正则表达式检查你的输入,看看输入是否有意外字符,如果是则拒绝它,因为你不能保证每个移动设备的输入显示都会显示你要求它的方式(即使这是使用 inputType 和数字的点!)