MultiAutoCompleteTextView

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());


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

我不想将警报对话框与MultiChoiceItems一起使用,因为我的列表中有200多个项目。

谢谢!!

最佳答案

我知道这是一个古老的问题,但是如果您仍然有此问题,则可以通过至少两种方式进行:


  您可以添加onFocusChangeListener,然后执行
    里面的验证。

 您可以将自己的活动实施为TextWatcher
    然后覆盖:


@Override
public void afterTextChanged(Editable s) {
        // validation code goes here
}


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

关于android - 如何将MultiAutoCompleteTextView的值限制为仅来自适配器的项目?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28828527/

10-10 06:08