当前,我有用户输入其手机号码所需的edittext。
我需要做的是限制用户输入“ 0”,只允许在编辑文本中首先输入“ 9” 例如:
当用户尝试在编辑文本中输入“ 0”并且它是编辑文本中的当前第一个数字时,则不应使用该字符。
只能接受的输入是: 9351312351,9313151231。 其他号码如 0931231551,02312512312不应该被允许。
我当前的想法是在textwatcher中是这样的:
@Override
public void afterTextChanged(Editable editable) {
if (!mMobileNumberNoEditText.getText().toString().substring(0,0).equals("9")) {
mMobileNumberNoEditText.setText("");
}
}
当我输入任何数字时,当前会导致错误。 日志猫什么也没显示。它只是冻结而停止工作。
答案 0 :(得分:1)
您可以像下面通过检查长度进行操作
@Override
public void afterTextChanged(Editable editable) {
String number = number.toString()
if(number.startsWith("0"))
{
mMobileNumberNoEditText.setText("");
}
}