我有一个接受文本和数值的编辑文本。 我必须在每4个字符后添加空格格式化它。 以下是复制问题的步骤 1.点击编辑文本 2.在键盘上选择数字模式并继续输入数字 3.附加时刻空格,键盘切换到文本模式。我该如何防止它。这是我试过的代码
editText.addTextChangedListener(new TextWatcher()
{
public void afterTextChanged(Editable s)
{
}
public void beforeTextChanged(CharSequence s, int start,
int count, int after)
{
}
public void onTextChanged(CharSequence s, int start,
int before, int count)
{
String text = editText.getText().toString();
textlength = editText.getText().length();
if(text.endsWith(" "))
return;
if(textlength == 5 || textlength == 10 || textlength == 20)
{
editText.setText(new StringBuilder(text).insert(text.length()-1, " ").toString());
editText.setSelection(editText.getText().length());
}
}});
}
答案 0 :(得分:0)
您可以尝试做的是在您的计划中 a)检查是否收到空格字符。如是 b)使用setInputType函数切换到数字小键盘(InputType.TYPE_CLASS_NUMBER)
希望这能解决问题。但是您需要监视用户输入的每个字符。