如何将MultiAutoCompleteTextView的值限制为仅适用于我的适配器中的项目?

时间:2015-03-03 09:44:39

标签: android multiautocompletetextview

这是我使用的代码:

MultiAutoCompleteTextView selectedCities = (MultiAutoCompleteTextView)findViewById(R.id.citiesSelected);

String[] cities = getResources().getStringArray(R.array.cities);

ArrayAdapter<String> adapter = new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1,cities);
        selectedCities.setAdapter(adapter);
        selectedCities.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

但是当我想添加项目时,可以添加不在我列表中的任何字符串......

我不想将Alert Dialog与MultiChoiceItems一起使用,因为我的列表中有200多个项目。

谢谢!

1 个答案:

答案 0 :(得分:1)

我知道这是一个老问题,但如果你仍然有这个问题,你可以通过至少两种方式做到这一点:

     
  1. 您可以添加onFocusChangeListener然后执行     内部验证。
  2. 您可以让您的活动实施TextWatcher和     然后覆盖:
@Override
public void afterTextChanged(Editable s) {
        // validation code goes here
}

关于最后一个,请看一下这个问题:Android: How can I validate EditText input?