我在Android中具有自动完成框,我用从服务器检索到的某些列表的名称填充此自动完成框。

假设我有ABC,XYZ,PQR,ABCC,ABCCD等...现在,当我键入AB时首先提出建议:它应该给我ABC,ABCC,ABCCD。现在我选择了ABC ..
(多值自动完成,以;分隔)
现在,当我写ABC时:再给ABC,ABCC,ABCCD ..

结果我想要:在ABC上,应从自动完成列表中删除选择。所以下一个建议应该是ABCC,只有ABCCD而不是ABC。

请帮帮我

提前致谢..

来自以下注释的代码:

myAutoComplete = (MultiAutoCompleteTextView) findViewById(R.id.talksender);
myAutoComplete.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
myAutoComplete.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, names));

最佳答案

您需要跟踪选定的项目。
创建过滤列表时,您需要根据在EditText中键入的字符串以及已选择的项目进行过滤。


要过滤ArrayAdapter,您需要:


创建一个Filter实现,该实现基于EditText输入和已选择的项目执行过滤。
重写ArrayAdapter的getFilter()方法以返回自定义的Filter实现

08-26 01:53