使用 Lwuit 1.5 版,我在使用Virtual Keyboard时遇到问题。给定一个带有数值约束的 TextField。 尽管给出了约束,输入的第一个字符将直接进入文本字段。
actionCommand
我在VirtualKeyboard.java
产生这个问题时找到了源代码;
case INSERT_CHAR:
Button btn = currentButton;
String text = btn.getText();
if (inputField.getText().length() == 0) {
inputField.setText(text);
inputField.setCursorPosition(text.length());
} else {
inputField.insertChars(text);
}
break;
如上所示,第一个字符将永远不会通过insertChars
并稍后检查有效性。
问题是:我无法弄清楚为什么要实施这种行为,如果我覆盖删除“if”部分,我害怕破坏我没有意识到的东西。
有谁知道可能是什么原因?
如果有人已经有此问题的 Workarround,请不胜感激。