android - AutoCompleteTextView - 建议在调用 `notifyDataSetChanged` 时自动关闭

标签 android drop-down-menu autocompletetextview

我创建了适配器并创建了过滤器。适配器工作正常,但每次我调用 notifyDataSetChanged 时,AutoCompleteTextView 的下拉列表都会关闭,然后重新打开并提供新建议。

有什么办法可以避免下拉菜单的关闭和重新打开?

编辑

class MyAdapter extends ArrayAdapter<String> {

    private static final Filter NO_FILTER = new NoFilter();

    private final Handler mHandler = new Handler();

    public MyAdapter(Context context, int textViewResourceId) {
        super(context, textViewResourceId);
    }

    public void updateList(String prefix) {
        List<String> list = ...; //from web server;

        clear();
        foreach (String s : list)
            add(s);
        notifyDataSetChanged();
    }


    @Override
    public Filter getFilter() {
        return NO_FILTER;
    }


    private static class NoFilter extends Filter {
        @Override
        protected FilterResults performFiltering(CharSequence prefix) {
            return new FilterResults();
        }

        @Override
        protected void publishResults(CharSequence constraint, FilterResults results) {
        }
    }
}

最佳答案

关于android - AutoCompleteTextView - 建议在调用 `notifyDataSetChanged` 时自动关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17123512/

相关文章:

Android 自动完成 TextView : How to verify if a user has selected a suggested value or entered a new one?

android - 多个通知点击启动相同的 Activity android

android - View.hasTransientState() 的目的是什么

android - 如何用文本框中的值替换文档路径?

javascript - 导航菜单栏

android - 与原生短信应用程序 Android 中一样使用名称和号码自动完成

android - 自定义日历和日历适配器

css - 带有下拉菜单的 Twitter bootstrap nav-pills

html - 关闭下拉框后更改 <select> 背景颜色

android - AutoCompleteTextView 不允许输入数字