Ограничить конкретную букву / цифру в первом вводе в тексте редактирования
В настоящее время у меня есть 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("");
}
}
В настоящее время вызывает ошибку, как только я введу любое число. Логкат ничего не показывает. он просто замерз и перестал работать.
1 ответ
Вы можете сделать это, как показано ниже, проверив длину
@Override
public void afterTextChanged(Editable editable) {
String number = number.toString()
if(number.startsWith("0"))
{
mMobileNumberNoEditText.setText("");
}
}