我正在使用我自己的Adapter
和我自己的Filter
来填充AutoCompleteTextView
. 一切正常,除了每次我调用notifyDataSetChanged
下拉菜单时都关闭然后重新打开新建议(这有点烦人)。
我想要实现的 - 与谷歌的行为相同。当您输入单词时,下拉列表中只会填充新值(无需重新打开)。有什么解决方法吗?
附言
适配器填充Filter#publishResults
:
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
if(results == null) {
return;
}
mAdapter.clear(); //notifyDataSetChanged is NOT called here
List<?> content = (List<?>) results.values;
final int size = content.size();
for(int i=0; i<size; i++) {
mAdapter.add((City) content.get(i));
}
mAdapter.notifyDataSetChanged();
}