我注意到横向模式下软键盘的文本与我在纵向模式下的EditText字段中看到的字符不同。我使用一个keylistener来使EditText只接受特殊的字符:
private class MyKeylistener extends NumberKeyListener {
public int getInputType() {
return InputType.TYPE_CLASS_NUMBER;
}
@Override
protected char[] getAcceptedChars() {
return new char[] {'0','1','2','3','4','5','6','7','8','9',',','-'};
}
};
当我在横向模式中键入“,”时,我在软键盘文本中看不到它,但当我将屏幕翻转为纵向模式时,它会出现在EditText中。如何使软键盘文本显示所有允许的字符?我附上一张图片来说明我的意思,EditText是“34,37,39”:
答案 0 :(得分:6)
我找到了答案: - )
通过使用此行,您只需在横向模式下隐藏软键盘文本:
myEditText.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI);
这样,EditText在横向模式下也可以在键盘上方看到,一切都按预期工作。 另见:imeOptions