AutoCompleteTextView - disable filtering

前端 未结 4 1108
被撕碎了的回忆
被撕碎了的回忆 2020-12-14 19:56

I\'m retrieving a list of strings from a webservice and I want to list them up on a AutoCompleteTextField regardless of the built-in AutoComp

4条回答
  •  天命终不由人
    2020-12-14 20:38

    I solved my problem by making a custom adapter extending ArrayAdapter class and overriding its getFilter() method. By doing this the list will not be filtered based on any text placed in the TextField and all items will be displayed.

    public class MyAdapter extends ArrayAdapter{
        public MyAdapter(@NonNull Context context, int resource) {
            super(context, resource);
        }
    
        public MyAdapter(@NonNull Context context, int resource, int textViewResourceId) {
            super(context, resource, textViewResourceId);
        }
    
        public MyAdapter(@NonNull Context context, int resource, @NonNull Object[] objects) {
            super(context, resource, objects);
        }
    
        public MyAdapter(@NonNull Context context, int resource, int textViewResourceId, @NonNull Object[] objects) {
            super(context, resource, textViewResourceId, objects);
        }
    
        public MyAdapter(@NonNull Context context, int resource, @NonNull List objects) {
            super(context, resource, objects);
        }
    
        public MyAdapter(@NonNull Context context, int resource, int textViewResourceId, @NonNull List objects) {
            super(context, resource, textViewResourceId, objects);
        }
    
        @NonNull
        @Override
        public Filter getFilter() {
            return new Filter() {
                @Override
                protected FilterResults performFiltering(CharSequence constraint) {
                    return null;
                }
    
                @Override
                protected void publishResults(CharSequence constraint, FilterResults results) {
    
                }
            };
        }
    }
    
    

提交回复
热议问题