У меня есть приложение, в котором есть поля EditText. Я установил валидацию для полей того, что должен ввести пользователь. Но я хочу установить сообщение об ошибке, если он вводит неправильный ввод, что я не уверен, как это сделать.
Это коды проверки для edittext
EditText txtDislikes = (EditText) findViewById(R.id.txtDislikes);
txtDislikes.setHint("e.g. Skating, Photography separate by comma");
txtDislikes.setFilters(new InputFilter[] {
new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start,
int end, Spanned dest, int dstart, int dend)
{
if(source.equals(""))
{
return source;
}
if(source.toString().matches("[a-z A-Z -]+"))
{
return source;
}
return "";
}
}
});
Я пытался ввести source.setError("ONLY LETTERS ARE ALLOWED");
в
if(source.equals(""))
{
return source;
}
else
{
source.setError("ONLY LETTERS ARE ALLOWED");
}
if(source.toString().matches("[a-z A-Z -]+"))
{
return source;
}
else
{
source.setError("ONLY LETTERS ARE ALLOWED");
}
return "";
Но у меня ошибка говорит: "Метод setError(String) не определен для типа CharSequence". Не знаю, что это значит.
Кроме того, я не мог найти хороших примеров для этого. Будем очень признательны за любую помощь или предоставленные примеры. Спасибо!
txtDislikes.setError()
, а неsource.setError()
- person Aprian   schedule 27.09.2012