editext用の汎用テキストウォッチャーがあります。以下に示すように、 setError() を使用して editext の検証を使用しました
private class GenericTextWatcher implements TextWatcher {
private View view;
private GenericTextWatcher(View view) {
this.view = view;
}
// @Override
public void afterTextChanged(Editable editable) {
switch (view.getId()) {
case R.id.autocompletetextview:
isAlphaNumeric = validateEditText("^[a-zA-Z0-9 ,.-]*$", editLocation.getText().toString());
if (!isAlphaNumeric) {
// editLocation.setError(getErrorMsg("Only , . and - are allowed"));
editLocation.setError(getText(R.string.invalid_loc_address));
} else {
}
}
}
// @Override
public void beforeTextChanged(CharSequence sequence, int start, int count, int after) {
}
![enter image description here][1]
// @Override
public void onTextChanged(CharSequence sequence, int start, int before, int count) {
}
}
私が使用している検証は、編集テキストと重複しており、編集テキストの値は表示されません。エラーメッセージをシフトすることは可能ですか? 問題の適切な解決策を提案してください