我有一个 editText 和 inputType 作为电话号码。我想在输入第一位数字后立即添加特定的区号。举个例子
我输入 6,EditText 应该显示 +1 6。
我正在尝试使用 textWatcher 实现此目的,但不确定如何将我输入的数字放在“+1”之后
public void afterTextChanged(Editable s)
{
if(s.length() == 1)
{
numberText.settext("+1");
numberText.setSelection(numberText.getText().length());
}
}
但这里的问题是,当我输入第一个数字时,+1 被填充,但通过键盘输入的数字没有显示。我不确定这里出了什么问题?
此外,当我退格并从文本中删除 1 时,会发生这种情况,但我无法删除 + (这会自动填充)。我不想在填充 +1 后退格时删除 +1。
这可能吗?如果可以的话怎么办?
谢谢!
最佳答案
替换
numberText.settext("+1");
与
numberText.settext("+1" + s.toString());
您没有正确更新现有文本。
关于java - 在android中输入第一个字符后立即输入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28958867/