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

时间:2013-06-15 12:12:44

标签: 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) {
        }
    }
}

1 个答案:

答案 0 :(得分:2)