Android Autocomplete Edittext setError在未调用时显示
在我的项目中,我有一个自动完成的Edittext,其中有一个可供选择的值列表。 如果用户输入的内容不在该列表中,则会显示错误。到目前为止,这一切都很好,问题是当用户(正确地)从列表中选择项目时,也会显示错误。因此,当正确选择时,if和else语句都将执行 有什么解决办法吗Android Autocomplete Edittext setError在未调用时显示,android,autocomplete,android-edittext,Android,Autocomplete,Android Edittext,在我的项目中,我有一个自动完成的Edittext,其中有一个可供选择的值列表。 如果用户输入的内容不在该列表中,则会显示错误。到目前为止,这一切都很好,问题是当用户(正确地)从列表中选择项目时,也会显示错误。因此,当正确选择时,if和else语句都将执行 有什么解决办法吗 for(int i = 0; i < countries.length; i ++) { if(citySelected.equals(countries[i])) { ServiceDataba
for(int i = 0; i < countries.length; i ++) {
if(citySelected.equals(countries[i])) {
ServiceDatabase.getCity = citySelected;
Intent intent = new Intent(SearchService.this, ServiceActivity.class);
startActivity(intent);
} else {
int ecolor = Color.BLACK; // whatever color you want
String estring = "Bitte wähle eine Stadt aus der Liste aus";
ForegroundColorSpan fgcspan = new ForegroundColorSpan(ecolor);
SpannableStringBuilder ssbuilder = new SpannableStringBuilder(estring);
ssbuilder.setSpan(fgcspan, 0, estring.length(), 0);
autoCompleteTextViewCity.setError(ssbuilder);
}
}
for(int i=0;i
您需要为循环重构
目前,它正在针对每个城市检查输入,如果与其中任何一个城市不匹配,则调用setError
可能的解决方案如下:
if (Arrays.asList(countries).contains(ServiceDatabase.citySelected)) {
// Start SearchService...
} else {
// call setError on the TextView
}