我为我和我的同事创建了一个应用程序,它所做的就是对数字的ArrayList进行排序。它的编码工作正常,我的模拟器上显示的键盘正是我正在寻找的。当我在三星Galaxy S4上安装它时出现了问题,它显示了一个完全不同的数字键盘。我把它安装在朋友S3上,他得到了一个完全不同于其他2的数字键盘。
我为键盘设置的唯一代码如下
android:inputType="number"
android:digits="0123456789,"
可能有一个不同的inputType,我不知道哪个可能更好用于此,但任何和所有帮助将非常感谢获得这个想法。在此先感谢,我非常乐意回答您可能遇到的任何问题。
答案 0 :(得分:0)
这是针对此问题的文档大http://code.google.com/p/android/issues/detail?id=2626。
解决方法:
public class DecimalKeyListener extends DigitsKeyListener {
private final char[] acceptedCharacters =
new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '-',
new DecimalFormatSymbols().getDecimalSeparator()};
@Override
protected char[] getAcceptedChars() {
return acceptedCharacters;
}
public int getInputType() {
return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_CLASS_TEXT;
}
}
DecimalKeyListener myDecimalKeyListener = new DecimalKeyListener();
EditText e = ...
e.setKeyListener(myDecimalKeyListener);