我在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
实现